变量
变量的概念:
- 内存中的一个存储区域
- 该区域的数据可以在同一类型范围内不断变化
- 变量是程序中最基本的存储单元。包含变量类型、变量名和存储的值

变量的作用:用于在内存中保存数据
数据类型:
基本数据类型:
1. 数值型:整数型(byte,short,int,long),浮点型(float,double)
2. 字符型(char)
3. 布尔型(boolean)
引用数据类型:
1. 类(class)
2. 接口(interface)
3. 数组(array)
注意:
- 定义long型变量,必须以“l”或“L”结尾,如果没有“L”结尾就默认数据类型为int型
- 定义float型变量,必须以“f”或“F”结尾
- 定义char型变量,通常使用一对‘ ’,不能为空,内部只能写一个字符、转义字符或者直接使用Unicode值来表示字符型常量
基本数据类型之间的运算规则:
自动类型提升:
当容量小的数据类型的变量与容量大的数据类型的变量做运算时,结果自动提升为容量大的数据类型
byte、char、short-->int-->long-->float-->double
特别的:当byte、char、short三种类型的变量做运算时,结果为int型
强制类型转换:
需要使用强转符:()
强制类型转换可能导致精度损失注意:
- 整型常量默认类型为int型
- 浮点型常量默认类型为double型
- 字符串(String)属于引用数据类型
关于进制:
所有数字在计算机底层都以二进制形式存在
对于整数,有四种表示方式:
- 二进制(binary):0,1,满2进1.以0b或0B开头
- 十进制(decimal):0-9,满10进1
- 八进制(octal):0-7,满8进1.以数字0开头表示
- 十六进制(hex):0-9及A-F,满16进1.以0x或0X开头表示。此处的A-F不区分大小写
二进制
Java整数常量默认时int类型,当用二进制定义整数时,其第32位是符号位;当是long类型时,二进制默认占64位,第64位是符号位
二进制的整数有如下三种形式:
- 原码:直接将一个数值换成二进制数。最高位是符号位
- 负数的反码:是对源码按位取反,只是最高位(符号位)确定是1
- 负数的补码:其反码加1
注意:
- 计算机以二进制补码的形式保存所有的整数
- 正数的原码、反码、补码都相同
- 负数的补码是其反码+1
补充:
十进制->二进制:除2取余的逆

最直接的方法是调用已有的函数直接转换:
String str1 = Integer.toBinaryString(60)
二进制->八或十六进制:

八或十六进制->二进制:

十进制->十六进制:String str2 = Integer.toHexString(60);
















