java字面量什么意思
时间: 2025-03-04 15:45:27 浏览: 55
### Java 中的字面量
#### 定义
在 Java 编程语言中,字面量是指直接用于表示固定值的符号序列。这些值可以直接被编译器识别并分配给变量或作为常量使用。字面量与变量不同,因为它们本身代表具体的数值而不是指向某个存储位置。
对于整数类型的字面量来说,在源代码里可以通过十进制、八进制(前缀`0`)、十六进制(前缀`0x`或者`0X`)以及二进制(自 JDK7 开始支持,前缀 `0b` 或者 `0B`) 来指定[^1]。
#### 示例
下面给出一些关于不同类型字面量的例子:
- **布尔型字面量**
布尔型只有两个可能的取值:`true` 和 `false`
- **字符型字面量**
单个字符由单引号括起来,例如 `'A'`, `\u0041`(Unicode 表达),`\n`(转义字符)
- **整数型字面量**
整数字面量可以采用不同的基数来书写:
```java
int decimalValue = 29; // 默认为十进制
int octalValue = 035; // 八进制 (等价于十进制 29)
int hexValue = 0x1D; // 十六进制 (也等于十进制 29)
int binaryValue = 0b11101; // 自JDK7起支持的二进制形式(同样对应十进制 29)
```
- **浮点型字面量**
浮点数默认是 double 类型;如果想要声明 float,则需加上后缀 F/f
```java
double pi = 3.14;
float eApproximation = 2.7F;
```
- **科学计数法**
使用 E/e 符号表示指数部分
```java
double largeNumber = 1E6; // 等同于 1 * 10 ^ 6
```
另外需要注意的是,虽然 String 是一种特殊的对象而非基本数据类型,但在语法上允许将其视为一种复合字面量处理方式之一。然而值得注意的一点在于尽管看起来像是修改了一个已经存在的 string 对象的内容,实际上当执行如下操作时:
```java
String a = "1";
a = "2";
```
这里并没有改变原始字符串 `"1"` 的内容,而是创建了一个新的字符串实例并将引用重新指派给了变量 `a`. 这是因为 java 中 strings 被设计成不可变的对象[^5].
阅读全文
相关推荐


















