Appearance
2026-08-27 · Java 里数据怎么存、怎么用。
Java 数据与变量
1. 常量
值一旦赋给就不能再改变的量,用 final 修饰:
java
final double PI = 3.14159;
final String NAME = "Java";
// PI = 3.14; // 编译报错:不能修改 final 变量常量名全大写,单词之间用下划线分隔:
MAX_RETRY、DEFAULT_TIMEOUT。
系统内置常量(直接用,不用定义):
java
System.out.println(Integer.MAX_VALUE); // int 最大值 2147483647
System.out.println(Integer.MIN_VALUE); // int 最小值 -2147483648
System.out.println(Double.MAX_VALUE); // double 最大值2. 变量
存数据的容器,值可以随时改:
java
int age = 25; // 声明 + 赋值
age = 26; // 重新赋值(没问题,因为不是 final)
String name = "张三";
name = "李四"; // String 也能改(引用类型,后面会讲)命名规则(硬性,不遵守编译报错)
- 只能用:字母、数字、
_、$ - 不能以数字开头:
int 1age;❌ - 不能用关键字:
int class;❌ - 区分大小写:
name≠Name≠NAME
命名习惯(软性,不遵守能编译,但会被骂)
- 变量/方法:小驼峰
studentName、getMaxValue - 类名:大驼峰
Student、StudentService - 常量:全大写下划线
MAX_RETRY - 包名:全小写
com.example.utils
3. 基本数据类型(8 种 primitive)
Java 有 8 种基本类型,不是对象,直接存值:
| 类型 | 字节 | 取值范围 | 默认值 | 举例 |
|---|---|---|---|---|
byte | 1 | -128 ~ 127 | 0 | byte b = 100; |
short | 2 | -32768 ~ 32767 | 0 | short s = 1000; |
int | 4 | 约 ±21亿 | 0 | int i = 100000; |
long | 8 | 很大很大 | 0L | long l = 100000L;(后缀 L) |
float | 4 | 单精度,约7位有效数字 | 0.0f | float f = 3.14f;(后缀 f) |
double | 8 | 双精度,约15位有效数字 | 0.0 | double d = 3.14; |
char | 2 | 0 ~ 65535 | '\u0000' | char c = 'A'; |
boolean | 1/4 | true / false | false | boolean flag = true; |
记忆:日常最常用的是
int、double、boolean、char。long用大写L后缀(小写l和数字1长得像,用大写避免歧义),float用小写f后缀。
char 的特殊之处:
java
char c1 = 'A'; // 字符
char c2 = 65; // 用 Unicode 码点赋值,等价于 'A'
char c3 = '\u0041'; // Unicode 写法,也是 'A'
System.out.println(c1); // 输出 A4. 类型转换
自动类型转换(小 → 大,自动转)
java
int i = 100;
double d = i; // int 自动转 double,不用管
// d = 100.0自动转换链:byte → short → int → long → float → double,char → int → long → ...
强制类型转换(大 → 小,手动转)
java
double d = 3.99;
int i = (int) d; // 强制截断,不是四舍五入
// i = 3(直接砍掉小数部分)强制转换可能丢精度或溢出,谨慎使用。反过来,从大范围转到小范围必须强转,编译器不让自动转。
字符串与数字互转
java
// 数字 → 字符串
String s = String.valueOf(100); // "100"
String s2 = 100 + ""; // "100"(拼接空串,不推荐)
// 字符串 → 数字
int i = Integer.parseInt("100"); // 100
double d = Double.parseDouble("3.14"); // 3.14
Integer.parseInt()是最常用的,记住这一个就够。