《Java 7程序设计入门经典》一2.3 字面量

简介: 本节书摘来自华章出版社《Java 7程序设计入门经典》一书中的第2章,第2.3节,作者(美)Herbert Schildt Dale Skrien,更多章节内容可以访问云栖社区“华章计算机”公众号查看

2.3 字面量

在Java中,字面量(literal)指人类可以阅读的固定值的表示。例如,数100是字面量。字面量也常常称为常量(constant)。大多数字面量及其用法非常直观,前面的示例程序中已经以各种形式使用过它们。现在正式地解释它们。
Java的字面量可以是任意基本数据类型。每种字面量的表示取决于类型。如前所述,字符常量由单引号包括。例如,'a'和'%'都是字符常量。
整数字面量是没有小数部分的数。例如,10和-10是整数字面量。浮点字面量有小数点,小数点后是小数部分。例如,11.123是浮点字面量。Java也允许使用科学计数法表示浮点数。这种情况下在尾数后使用E或e,然后再跟上指数。指数必须是整数。例如,1.234E2表示值123.4,1.234E-2表示值0.01234。
默认情况下,整数字面量的类型是int。如果需要指定long类型的字面量,需要在常量后加l或L。例如,12是一个int类型的字面量,但是12L是一个long类型的字面量。
默认情况下,浮点字面量是double类型的。要指定一个float类型的字面量,可以在常量后加f或F。例如,10.19F是一个float类型的字面量。
尽管整数字面量默认创建了一个int值,但是只要值可以由目标类型表示,它们仍可以赋给char类型、byte类型或short类型的变量。整数字面量总能赋给long类型的变量。
从JDK 7开始,可以在整数或浮点数中使用一条或多条下划线。这能让含有多个数字的值阅读起来更简单。当字面量在编译时,会丢弃下划线。下面是一个例子:
image

这指定了值123?451?234。下划线的使用在编码部件号、用户ID、状态编码等一般含有子数据群的数据时特别有用。

2.3.1 十六进制、八进制和二进制字面量

在编程中有时使用八进制或十六进制计数系统会比使用十进制计数系统更加简单。基于8的计数系统称为八进制(octal),它使用0~7的数字。八进制10等于十进制8。基于16的计数系统称为十六进制(hexadecimal),它使用数字0~9和字母A~F(也可以用小写字母a~f)。字母A~F表示10、11、12、13、14和15。例如,十六进制中的10表示十进制的16。因为常常使用这两种计数系统,所以Java不但允许以十进制表示整形字面量,也允许以十六进制或八进制表示整形字面量。十六进制字面量由0x或0X打头(即数字0后跟字母x或X)。八进制字面量以0打头。下面是一些例子:
image

感兴趣的是,Java也允许十六进制浮点字面量,不过这很少使用。
从JDK 7开始,可以用二进制指定整数字面量。为此,需要在二进制数前加0b或0B。例如,0b1100用二进制指定十进制值12。

2.3.2 转义字符序列

将字符常量包括在单引号内对绝大多数的字符都是可行的。但是对于一些字符(如回车),在使用文本编辑器时就出现特别的困难。另外,某些其他字符,如单引号和双引号,在Java中有特殊的意义,不能直接使用。所以,Java提供了特殊的转义序列(escape sequence),有时又称为反斜线字符常量,如表2-2所示。这些序列用于代替它们表示的字符。
image

例如,下面把制表符字符赋予变量ch:
image

下面的例子把单引号赋予ch:
image

2.3.3 字符串字面量

Java支持另一种字面量类型:字符串。字符串(string)是一系列字符,由双引号包围。例如,
image

就是一个字符串。在前面示例程序中的许多printf()语句中能看到许多字符串的例子。
除了一般的字符外,字符串字面量也能包括一个或多个刚刚介绍的转义序列。例如,考虑如下程序,它使用转义序列n和t。
image

输出如下所示:
image

注意如何用转义序列n来换行。这样就不需要写多个println()语句来获得多行输出。只要在一个长字符串中需要换行的地方包括转义字符n即可。
image

相关文章
|
13天前
|
Java 测试技术 开发者
💡Java 零基础:彻底掌握 for 循环,打造高效程序设计
【10月更文挑战第15天】本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!
106 63
|
5月前
|
存储 小程序 前端开发
java毕设项目|宿舍管理系统小程序设计与实现
java毕设项目|宿舍管理系统小程序设计与实现
|
5月前
|
监控 Java API
Java 程序设计 第八章 线程
Java 程序设计 第八章 线程
|
5月前
|
Java 编译器 C语言
Java 程序设计 第2章 Java基本语法 笔记
Java 程序设计 第2章 Java基本语法 笔记
|
5月前
|
存储 Java 程序员
Java入门——基本语法(注释、字面量、变量、使用变量的注意事项、关键字、标识符)
Java入门——基本语法(注释、字面量、变量、使用变量的注意事项、关键字、标识符)
37 2
|
5月前
|
Java
Java 程序设计 第七章 文件管理与输入/输出 笔记
Java 程序设计 第七章 文件管理与输入/输出 笔记
|
5月前
|
Java Android开发
Java 程序设计 第6章 异常与断言 笔记
Java 程序设计 第6章 异常与断言 笔记
|
5月前
|
Java 编译器
Java 程序设计 第4章 继承 笔记
Java 程序设计 第4章 继承 笔记
|
5月前
|
安全 Java 数据安全/隐私保护
Java 程序设计 第3章 类与对象 笔记
Java 程序设计 第3章 类与对象 笔记
|
5月前
|
Java 开发工具 Android开发
Java 程序设计 第1章 Java入门 笔记
Java 程序设计 第1章 Java入门 笔记