Java自学笔记(4):常量与变量,数据类型及其转换
字面常量
1,整型常量
任何一个具体的整型数据就代表一个整型值,对整型常量值的表示可以采用十进制,八进制或十六进制表示。
十进制表示:123,-456,0;
八进制表示:以‘0’开头: 012;
十六进制表示:以‘0x’开头:如0x12等。
整型默认int,要声明long,在后要加l或L。
2,浮点型常量
十进制表示: 1.2 ,-0.3
科学计数表示: 2.1e2 ,3.14E-3
浮点型默认double,要声明float,在后要加f或F。
浮点数是不精确的,一般不判断一个浮点数等于另一个浮点数,而是用两个浮点数之差小于某个很小的数来判断。
3,字符型常量
字符常量是单引号括起来的单个字符,如‘c’,‘2’
字符采用unicode编码,一个字符占两个字节。 注意,与C++不同,C++采用ASCII编码,且一个字符占一个字节。
转义字符
| 转义序列 | 名称 | Unicode |
| \b | 退格键 | \u0008 |
| \t | Tab键 | \u0009 |
| \n | 换行符号 | \u000A |
| \f | 进纸 | \u000C |
| \r | 回车 | \u000D |
| \\ | 反斜杠 | \u005C |
| \' | 单引号 | \u0027 |
| \" | 双引号 | \u0022 |
System.out.println("Hello World!"); //println表示换行
System.out.print("Hello World!\n"); //print表示不换行,但\n有换行的效果
4,boolean型常量
true,false 常用于流程控制
5,字符串常量
使用双引号引起来的0个或多个字符序列 如“Hello”,“234”等
用关键字final修饰的具有名字的常量
也叫做只读变量,必须在定义时赋值,不允许再次赋值
如:final float PI=3.141592F; //final相当于C++中的const,常量名字一定要大写
变量:在程序运行中,其值是允许改变的
声明格式(定义数据类型,定义变量名称): 数据类型 标识符1[=初值],标识符2[=初值];
基本数据类型转换
不同的数据类型可以转换,但首先要注意:boolean类型不可转为其他类型
转换规则:1,自动转换或隐式转换:容量小的类型自动转换为容量大的类型,在内存中占用字节少的类型容量就小。
byte,short,char->int->long->float->double
2,多种类型混合运算,系统自动将所有数据类型转换为容量最大,然后再进行运算
注意:byte,short,char在参与运算时会首先转换为int型
3,强制转换,容量大的类型可以强制转换为容量小的类型,但可能溢出或损失精度
如:int i=(int)2.8; //i=2,损失精度

浙公网安备 33010602011771号