码歌Java小白学习之路的第三天(深入Java基本语法)
1. 变量
程序在运行时发生变化的值,也是用来存放数据的
1.1 变量的要素
- 数据类型
- 变量名
- 作用范围
1.2 变量的使用
- 声明
数据类型 变量名
//声明一个变量
int mun;
- 赋值
在java中定义一个变量使用前需要先给这个变量赋值
//声明一个变量并赋值 一般赋值与声明放在同一行
int mun=10;
//也可以先声明再赋值
int mun;
mun=10;
在main方法里不能出现同名的变量
1.3 数据类型
java是强类型的语言 优点:控制内存浪费
1.3.1 整数
类型名称 | 数据类型 | 所占空间 | 取值范围 |
---|---|---|---|
字符型 | byte | 1字节 | -128~127 |
短整型 | short | 2字节 | -3w ~ 3w;-2^15 ~ 2^15 |
整型 | int | 4字节 | -21亿 ~ 21亿;-2^31 ~ 2^31 |
长整型 | long | 8字节 | 无穷大;-2^63 ~ 2^63 |
- java中所以整型默认为int型,当把一个超级大的数赋值给long时应在数值后面加“L”或“l”。
- 在给byte和short赋值时,数值不能超过两个类型的取值范围才能正常赋值。
整数的赋值方法
- 二进制赋值方式 :
以0B或0b
开头后跟二进制数字,注意:二进制的赋值方式是从jdk1.7才开始出现的
//二进制赋值
int a=0b101;
System.out.println(a);
5
- 八进制赋值方式:
以0
开头后跟八进制数字
//八进制赋值
int a=017;
Sysye.out.println(a);
15
- 十进制赋值方式:
正常赋值数值
//十进制赋值
int a=17;
Sysye.out.println(a);
17
- 十六进制赋值方式:
以0X或0x
后跟十六进制数字,十六进制中A=10,B=11,C=12……
//十六进制赋值
int a=0xa;
Sysye.out.println(a);
10
1.3.2 浮点数
类型名称 | 数据类型 | 所占空间 | 精度 |
---|---|---|---|
单精度 | float | 4字节 | 6 ~ 7 |
双精度 | double | 8字节 | 15 ~ 16 |
-
小数的注意事项
-
java中所以整型默认为double型,当把一个小数赋值给float时应在数值后面加“F”或“f”。
-
在计算机中的小数存储是近似值,以后的项目中尽量要避免使用小数进行四则运算。后续学习
BigDecimal处理小数的运算。 -
在java中小数中有三个特别奇怪的值
-
Infinity System.out.println(1/0.0);
-
-Infinity System.out.println(-1/0.0);
-
NaN(not a number) System.out.println(0.0/0.0);
小数的赋值方式
- 正常赋值
-
//小数赋值 float a=0.17f; Sysye.out.println(a); 0.17 double a=o.17; Sysye.out.println(a); 0.17
- 科学计数法:
尾数e整数 => 3.14159e4 注意:e前面的值一定是一个 0<x<10 (0,10)
1.3.3 逻辑型 、布尔型
boolean类型只有两个值,true和false。
- boolean 实际只有占1位 ,但是会按照byte给它分配内存 1个字节。
- 存储时true为1,false为0。
- java中不能够直接通过1和0给boolean变量赋值。(编译器不会编译通过)
1.3.4 字符型
-
类型名称 | 数据类型 | 所占空间 | 精度 |
---|---|---|---|
字符型 | char | 2字节 | [0,65535] |
- 一组单引号引起来的单个字符。(不能是0个字符也不能是多个字符也不能是双引号)
- 一个数字赋值 (一个字符其实就是对应的一个数字)
- char类型可以参与四则运算
1.3.5 转义字符
\t
:制表符,打印八个空格,会与前面所占的字符累加,占满八个字符增加八个空格\n
换行- 可以原样输出
\
,""
,''
。
System.out.print("\\");
\
System.out.print("\"");
"