Java 字面量说明与示例
什么是Java字面量
在Java中,字面量(Literals)是指在源代码中直接表示的固定值,用于表示基本数据类型的具体数值或字符序列。它们可以直接用于初始化变量、传递给方法或在表达式中使用。Java支持多种类型的字面量,包括整数、浮点数、字符、字符串、布尔值和null等。
Java字面量示例
以下是一些Java字面量的示例:
public class LiteralExample {
public static void main(String[] args) {
// 整数字面量
int intLiteral = 123;
System.out.println("整数字面量: " + intLiteral);
// 二进制、八进制、十六进制整数字面量
int binaryLiteral = 0b01100101; // 101
int octalLiteral = 075; // 61
int hexLiteral = 0x3F; // 63
System.out.println("二进制整数字面量: " + binaryLiteral);
System.out.println("八进制整数字面量: " + octalLiteral);
System.out.println("十六进制整数字面量: " + hexLiteral);
// 浮点数字面量
double doubleLiteral = 3.14;
float floatLiteral = 3.14f; // 注意f或F后缀
System.out.println("浮点数字面量(double): " + doubleLiteral);
System.out.println("浮点数字面量(float): " + floatLiteral);
// 字符字面量
char charLiteral = 'A';
System.out.println("字符字面量: " + charLiteral);
// 字符串字面量
String stringLiteral = "Hello, World!";
System.out.println("字符串字面量: " + stringLiteral);
// 布尔字面量
boolean trueLiteral = true;
boolean falseLiteral = false;
System.out.println("布尔字面量(true): " + trueLiteral);
System.out.println("布尔字面量(false): " + falseLiteral);
// null字面量
// 注意:null不能直接打印,但可以赋值
Object nullLiteral = null;
// System.out.println(nullLiteral); // 这会抛出NullPointerException
}
}
表格举例各种情况
常用数据 | 生活中的写法 | 程序中的写法 | 说明 |
---|---|---|---|
整数 | 123, -456 | 123, -456 | 写法一致,不带小数点的数值,可正可负 |
浮点数 | 3.14, -5.21 | 3.14, -5.21 | 写法一致,带小数点的数值,可正可负 |
字符 | A, 你 | 'A', '你' | 单引号括起来的单个字符,有且只有一个字符 |
字符串 | Hello, abc | "Hello", "abc" | 双引号括起来的字符序列,内容可有可无 |
布尔值 | 真, 假 | true, false | 逻辑值,只有两个值:true代表真, false代表假 |
空值 | 无 | null | 表示不引用任何对象的特殊值,空值 |
说明
-
整数:Java中整数默认为十进制,但可以使用前缀
0b
/0B
表示二进制,0
表示八进制,0x
/0X
表示十六进制。 -
浮点数:默认类型为
double
,使用f
或F
后缀表示float
类型。科学计数法使用e
或E
表示10的幂次。 - 字符:必须用单引号括起来,且只能包含一个字符。
- 字符串:必须用双引号括起来,可以包含零个或多个字符。
-
布尔值:只有两个值
true
和false
。 - null:表示空引用,可以赋值给任何引用类型的变量,但不能赋值给基本类型的变量。它本身不是一个对象,因此不能直接输出。
这些字面量在Java编程中非常基础且重要,理解和掌握它们对于编写高质量的Java代码至关重要。