java变量定义需明确类型、命名规范和赋值方式,三种写法包括先声明后赋值、声明同时赋值、一行定义多个同类型变量;八大基本数据类型字节固定、范围明确,不可越界或隐式跨类转换;类型转换遵循自动提升与强制转换规则,boolean不参与数值转换,string为引用类型,需用equals()比较内容。

Java变量定义必须明确类型、命名规范、赋值方式,八大基本数据类型各有固定字节和取值范围,用错类型或越界会导致编译失败或运行异常。
变量定义的三种写法
变量是程序中存储数据的基本单元,声明时需指定类型和名称,使用前必须初始化(局部变量尤其注意)。
-
先声明后赋值:分开两步,适合逻辑分步或条件赋值
int age;
age = 25; -
声明同时赋值:最常用,简洁安全
double price = 99.99; -
一行定义多个同类型变量:可混合初始化,但易读性略低
char a = 'X', b, c = 'Z';
八大基本数据类型的取值范围与细节
Java是强类型语言,每种基本类型内存占用固定、取值范围明确,不可越界,也不支持隐式跨类赋值(如 boolean 和 int 不能互转)。
-
整型(4种):
• byte(1字节):-128 ~ 127,常用于IO流或节省内存场景
• short(2字节):-32768 ~ 32767,较少单独使用
• int(4字节):-2147483648 ~ 2147483647,整数默认类型,日常开发主力
• long(8字节):-9223372036854775808 ~ 9223372036854775807,大数或时间戳必须加 L 后缀,如long ts = 1718999999999L; -
浮点型(2种):
• float(4字节):科学计数法表示,精度约6~7位有效数字,字面量必须带 f 或 F,如float f = 3.14f;
• double(8字节):默认浮点类型,精度约15~16位,字面量可省略 d/D,如double pi = 3.1415926535; -
字符型 char(2字节):
• 存储单个Unicode字符,范围 0 ~ 65535(即 '\u0000' ~ '\uffff')
• 写法有三种:char c1 = 'A';、char c2 = 65;、char c3 = '\u0041';
• 注意:单引号仅限单字符,'ab'或"a"均非法 -
布尔型 boolean(1字节):
• 仅允许true或false,不等价于 0/1
• 无数值运算意义,不能参与算术表达式,也不能转型为其他类型
类型转换关键规则
基本类型之间转换遵循“小容量→大容量自动提升,大容量→小容量强制转换”原则,否则编译报错。
- 自动转换(无需括号):byte → short → int → long → float → double
例如:int i = 100; double d = i;合法 - 强制转换(需显式括号):可能丢失精度或溢出
例如:double d = 123.99; int i = (int) d;结果为 123(截断小数)
又如:byte b = (byte) 200;实际存入 -56(超出 byte 范围发生回绕) - 特殊限制:boolean 不参与任何数值转换;char 与 int 可互转(因本质是 Unicode 码点),但 char 转 int 是自动的,int 转 char 需强制
String 不是基本类型,但高频使用
String 属于引用类型,用双引号定义,不可用 == 比较内容(应使用 .equals()),也无默认值(局部变量未初始化会报错,成员变量默认为 null)。
- 基本类型转 String:拼接空字符串或调用
String.valueOf()
如:int n = 42; String s = n + ""; - String 转基本类型:使用对应包装类的静态解析方法
如:int x = Integer.parseInt("123");、double y = Double.parseDouble("3.14");
注意:字符串格式非法会抛NumberFormatException
Java免费学习笔记:立即使用
解锁 Java 大师之旅:从入门到精通的终极指南











