01 - Java中的变量
一、变量的组成:
类型+名称+值
int a = 1;
二、变量的使用步骤
-
声明变量 int a;
-
赋值
a = 60; //应该这么说: 把 60 赋给 a //也可以一步到位 int a = 60; 通常我们是一步完成 使用 System.out.println(a);
三、变量使用的注意事项
变量表示内存中的一个存储区域 [不同的变量,类型不同,占用的空间大小不同,比如: int 4个字节,double 就是8个字节]
该区域有自己的名称 [变量名] 和类型 [数据类型]
变量必须先声明,后使用,即有顺序
该区域的数据/值可以在同一类型范围内不断变化
变量在同一个作用域内不能重名
变量 = 变量名 + 值 + 数据类型,这一点请大家注意。变量三要素
四、数据类型
每一种数据都定义了明确的数据类型,在内存中分配了不同大小的内存空间(字节)。
1)java 数据类型分为两大类:基本数据类型,引用类型
2)基本数据类型 有 8 种数值型 [byte,short,int, long,float,double,char,boolean
3)引用类型 [类,接口, 数组]
1.整数类型
类 型 | 占用存储空间 | 范围 |
---|---|---|
byte[字节] | 1字节 | -128~127 |
short[短整型] | 2字节 | -32768~32767 |
int[整形] | 4字节 | -2147483648~2147483647 |
long[长整型] | 8字节 | -2^63 ~ 2^63-1 |
整形的使用细节
- Java各整数类型有固定的范围和字段长度,不受具体OS[操作系统]的影响,以保证java程序的可移植性。
- Java的整型常量(具体值)默认为int型,声明long型常量须后加‘l’或‘L’。
- java程序中变量常声明为int型,除非不足以表示大数,才使用long。
- bit:计算机中的最小存储单位。byte:计算机中基本存储单元,1byte = 8 bit。
2.浮点类型
类 型 | 占用存储空间 | 范围 |
---|---|---|
单精度float | 4字节 | -3.403E38 ~ 3.403E38 |
双精度double | 8字节 | -1.798E308 ~ 1.798E308 |
- 关于浮点数在机器中存放形式的简单说明,浮点数=符号位+指数位+尾数位
- 尾数部分可能丢失,造成精度损失(小数都是近似值)。
浮点类型的使用细节
- 与整数类型类似,Java浮点类型也有固定的范围和字段长度,不受具体OS的影响。[float 是 4 个字节 double是 8 个字节]
- Java的浮点型常量(具体值)默认为double型,声明float型常量,须在值后面加
‘f’
或‘F'
。 - 浮点型常量有两种表示形式
十进制数形式: 如:5.12
512.0f
.512
(必须有小数点)
科学计数法形式: 如:5.12e2
[5.12*10的2次方]5.12E-2
[5.12/10的2次方] - 通常情况下,应该使用 double类型,因为它比 float类型更精确。
- 浮点数使用陷阱:
2.7
和8.1/3
比较值是否相等
3.字符类型
-
字符类型可以表示单个字符,字符类型是
char
,char
是两个字节(可以存放汉字)//例如 char c1 = 'a'; char c2 = '\t'; char c3 = '你'; char c4 = 97;
-
字符常量是用单引号
''
括起来的单个字符。例如:
char c1 = 'a';
char c2 = '中';
char c3 = '9';
-
Java中还允许使用转义字符''来将其后的字符转变为特殊字符型常量。
例如:
char c3 = '\n';
'\n'
表示换行符 -
在Java中,char 的本质是一个整数,在输出时,是 Unicode码对应的字符。
-
可以直接给char赋一个整数,然后输出时,会按照对应的 Unicode 字符输出。
-
char类型是可以进行运算的,相当于一个整数,因为它都对应有 Unicode码。
字符串广泛应用在 Java 编程中,在 Java 中字符串属于对象,Java 提供了 String 类来创建和操作字符串。
- 创建字符串最简单的方式如下:
String str = "spock"; - 用构造函数创建字符串:
String str2 = new String("Runoob");
4.布尔类型
- 布尔类型也叫boolean类型,boolean类型数据只允许取值 true 和 false,没有null值。
- boolean类型占一个字节。
- boolean类型适用于逻辑运算,一般用于程序流程控制。
public class Boolean01 {
//编写一个 main 方法
public static void main(String[] args) {
//演示判断成绩是否通过的案例
//定义一个布尔变量
boolean isPass = true;//
if (isPass == true) {
System.out.println("考试通过,恭喜");
} else {
System.out.println("考试没有通过,下次努力");
}
}
}
五、基本数据类型转换
自动类型转换
当Java程序在进行赋值或者运算时,精度小的类型自动转换为精度大的数据类型,这个转换过程称为自动类型转换。
- 数据类型按照精度大小排序,其转换规则如下:
char --> int --> long --> float --> double
byte --> short --> int --> long --> float --> double
- 注意事项
有多种类型的数据混合运算时,系统首先自动将所有数据转换成容量最大的那种数据类型,然后再进行计算。
当我们把精度(容量)大的数据类型赋值给精度(容量)小的数据类型时,就会报错,反之就会进行自动类型转换。
(byte, short) 和 char 之间不会相互自动转换。
byte,short,char他们三者可以计算,在计算时首先转换为int类型。
boolean不参与转换。
自动提升原则:表达式结果的类型自动提升为操作数中最大的类型
强制类型转换
- 自动类型转换的逆过程,将容量大的数据类型转换为容量小的数据类型。
- 使用时要加上强制转换符 ( ),但可能造成 精度降低或溢出,格外要注意。
- 注意事项:
当进行数据的大小从大-->小,就需要使用到强制转换。
强转符号只针对于最近的操作数有效,往往会使用小括号提升优先级。
//int x = (int)10*3.5+6*1.5;
int y = (int)(10*3.5+6*1.5);
char类型可以保存int的常量值,但不能保存int的变量值,需要强转
char c1 = 100;
int a = 100;
char c2 = a; //报错
char c3 = (char)a; //强制转换后ok
byte 和 short, char类型在进行运算时,当做int类型处理。
六、基本数据类型和 String 类型的转换
在程序开发中,我们经常需要将基本数据类型转成String类型。或者将String类型转成基本数据类型。
- 基本数据类型转String类型
语法:将基本类型的值 + “” 即可。
int a = 100;
float b = 20.0f;
String str1 = a + "";
String str2 = b + "";
- String类型转基本数据类型
语法:通过基本数据类型的包装类调用parseXXX方法
Integer.parseInt("123");
Double.parseDouble("20.1");
注:本博客引用韩顺平老师Java课程
本文作者:SpockC
本文链接:https://www.cnblogs.com/SpockC/p/15779502.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步