第二天(变量)"/>
虞小约的Java之旅第二天(变量)
文章目录
- 1.1.2代码注释
- 1.1.3标识符
- 1.1.4常量
- 1.1.5变量
- 1.1.6变量的类型转换
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);
更多推荐
虞小约的Java之旅第二天(变量)
发布评论