Java基本数据类型
- 变量就是申请内存来存储值。也就是说,当创建变量的时候,需要在内存中申请空间。
- 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来存储该类型数据。
通过定义不同类型的变量,可以在内存中存储整数,小数或者字符。
Java两大数据类型
- 内置数据类型
- 引用数据类型
基本类型 | 二进制表示 | 包装类 | 最小值 | 最大值 |
---|---|---|---|---|
byte | 8位 二进制补码表示有符号整数 | java.lang.Byte | Byte.MIN_VALUE=-128 | Byte.MAX_VALUE=127 |
short | 16位 二进制补码表示的有符号整数 | java.lang.Short | Short.MIN_VALUE=-32768 | Short.MAX_VALUE=32767 |
int | 32位二进制补码表示的有符号整数 | java.lang.Integer | Integer.MIN_VALUE=-2147483648 | Integer.MAX_VALUE=2147483647 |
long | 64位二进制补码表示的有符号整 | java.lang.Long | Long.MIN_VALUE=-9223372036854775808 | Long.MAX_VALUE=9223372036854775807 |
float | 单精度、32位、符合IEEE 754标准的浮点数 | java.lang.Float | Float.MIN_VALUE=1.4E-45 | Float.MAX_VALUE=3.4028235E38 |
double | 双精度、64 位、符合 IEEE 754 标准的浮点数 | java.lang.Double | Double.MIN_VALUE=4.9E-324 | Double.MAX_VALUE=1.7976931348623157E308 |
char | 单一的 16 位 Unicode 字符 | java.lang.Character | Character.MIN_VALUE=\u0000(十进制等效值为 0) | Character.MAX_VALUE=\uffff |
boolean | 表示一位的信息 | 只有两个取值:true 和 false | 默认值是false |
JAVA中还存在另外一种基本类型 void,它也有对应的包装类 java.lang.Void,不过我们无法直接对它们进行操作。
- 在Java中,引用类型的变量非常类似于C/C++的指针,引用类型指向一个对象,
指向对象的变量是引用变量
,这些变量在声明时被指定为一个特定的类型。变量一旦声明后,类型就不能被改变了。 - 对象、数组都是引用数据类型。
- 所有引用类型的默认值都是
null
- 一个引用变量可以用来引用任何与之兼容的类型。
Site site = new Site(“Runoob”);
Java常量
常量在程序运行时是不能被修改的。
在Java中使用final
关键字来修饰常量,声明方式和变量类似:
final double PI = 3.1415927;
虽然常量名也可以用小写,但为了便于识别,通常使用大写字母表示常量。字面量可以赋给任何内置类型的变量。例如:
byte = 68;
char a = ‘A’;
byte
,int
,lonh
,和short
都可以用十进制、16进制以及8进制的方式来表示。
当使用字面量的时候,前缀0
表示8进制,而前缀0x
代表16进制,例如:
int decimal =100; //十进制
itn octal =0144; //八进制
int hexa = 0x64; //十六进制
java字符串常量包含在两个引号之间的字符串序列。
java语言支持一些特殊的转义字符序列
\n | 换行 (0x0a) |
\r | 回车 (0x0d) |
\f | 换页符(0x0c) |
\b | 退格 (0x08) |
\0 | 空字符 (0x0) |
\s | 空格 (0x20) |
\t | 制表符 |
\" | 双引号 |
\’ | 单引号 |
\ | 反斜杠 |
\ddd | 八进制字符 (ddd) |
\uxxxx | 16进制Unicode字符 (xxxx) |
自动类型转换 整型、常量、字符型数据可以混合运算。运算中不同数据先转化为同一类型,然后进行运算。
低 -----------------------> 高
byte,short,char—> int —> long—> float —> double
- 不能对boolean类型进行类型转换。
- 不能把对象类型转换成不相关类的对象。
- 容量大的类型转换成容量小的类型时必须使用强制类型转换。
- 转换过程中可能会导致溢出或者损失精度
- 浮点数到整数的转换通过舍弃小数得到,而不是四舍五入。
强制类型转换
- 条件是转换的数据类型必须是兼容的。
隐含强制类型转换 - 整数的默认类型是int。
- 小数默认是double类型浮点型,在定义float类型时必须在数字后跟上
F
或f
。
Java变量类型
在Java语言中,所有的变量在使用前必须声明。
int a,b,c;
int d =3,e = 4,f = 5;
byte z = 22;
String s = “runoob”;
double pi = 3.14159;
char x = ‘x’;
Java语言支持的变量类型有:
- 类变量:独立于方法之外的变量,用static修饰。
- 实例变量:独立于方法之外的变量,不过没有static修饰。
- 局部变量:类的方法中的变量。
Java局部变量
- 局部变量声明在方法,构造方法或者语句块中;
- 局部变量在方法、构造方法、或者语句块被执行的时候创建,当它们执行完毕后,变量将被销毁
- 访问修饰符不能使用局部变量
- 局部变量只能在声明它的方法、构造方法或者语句块中可见
- 局部变量是在栈上分配的。
- 局部变量没有默认值,所以局部变量被声明后,必须经过初始化,才可以使用。
实例变量
- 实例变量声明在一个类中,但在方法、构造方法和1语句块之外;
- 当一个对象被实例化之后,每个实例变量的值就跟着确定;
- 实例变量的值应该至少被一个方法、构造函数或者语句块引用,使得外部能够通过这些方式获取实例变量信息;
类变量 (静态变量)
- 类变量也称为静态变量,在类中以static关键字声明,但必须在方法之外。
- 无论一个类创建了多少个对象,类只拥有类变量的一份拷贝。
- 静态变量除了被声明为常变量外很少使用,静态变量是指声明为public/private,final和static类型的变量。静态变量初始化后不可改变。
- 静态变量存储在静态存储区,经常被声明为常量,很少单独使用static声明变量。
- 静态变量在第一次被访问时创建,在程序结束时销毁。
- 与实例变量具有相似的可见性。但为了对类的使用者可见,大多数静态变量声明为public类型。
- 默认值和实例变量相似。数值型变量默认值是0,布尔默认false,引用默认null。变量的值可以再声明的时候指定,也可以在构造方法中指定。此外,静态变量还可以在静态语句块中初始化。
- 静态变量可以通过
ClassName.VariableName
的方式访问。 - 类变量被声明为
public static final
类型时,类变量名称一般建议使用大写字母。如果静态变量不是public和final类型,其命名方式与实例变量以及局部变量的命名方式一致。
Eclipse多行注释快捷键
- 选中你要加注释的区域,用
ctrl+shift+C
或者ctrl+/
会加上//
注释 - 先把你要注释的东西选中,用
shit+ctrl+/
会加上/* */
注释