1.1.2代码注释
1.单行注释:
int a = 1; //这是单行注释
2.多行注释:
/*int a = 2;
int b = 3;*/
1.1.3标识符
定义:包名,类名,方法名,参数名,变量名等称为标识符。
组成:可以由字母、数字、下划线、和美元符
1.1.4常量
- 整型常量
- 浮点型常量
- 字符常量
- 字符串常量
- 布尔常量
- null常量
1.1.5变量
- 整型变量
类型有:
byte、short、int、long
long num = 1851745481543654L;//所赋的值超出了int型的取值范围,后面必须加上字母L
long num = 19L;//所赋的值没有超出int型的取值范围,后面可以加上字母L
long num = 12;//所赋的值没有超出int型的取值范围,后面可以省略字母L
- 浮点型变量
类型有:
float (单精度浮点型) 、 double(双精度浮点型)
float f = 132.4f;//后面必须加上f
double a = 153.5;//后面可以省略d
- 字符型变量
char c = 'a';
char b = 97;
- 布尔型变量
boolean flag = false;//声明一个boolean类型的变量,初始值为false
flag = true;//改变flag变量的值为true
1.1.6变量的类型转换
- 自动类型转换
在这里插入代码片
- 强制类型转换
例如:int类型的取值范围大于byte类型的取值范围,导致数值溢出(使用强制转换后,会导师数据精度的丢失)
public class Example55{
public static void main (String [] args){
byte a;
int b = 4154;
a = (byte) b;
System.out.println(a);
System.out.println(b);
}
}
代码结果:
(出现这种现象原因:int类型在内存中占4个字节,而byte类型在内存中占1个字节,因此强制转换会导致前三个字节丢失使数值发生改变。)
public class Example03{
public static void main(String [] args){
byte b1 = 2;
byte b2 = 3;
byte b3 = b1+ b2;//错误!!!
System.out.print(b3);
}
}
在强制转化的过程中,b1 + b2 的运算过程中,变量 b1和 b2会被自动提升到int型,所以需要第五行改为:
byte b3 = (byte) (b1 + b2);