字面量

什么叫做字面量?JavaScript中这个词经常可以在各种论坛,参考资料中看到。今天才仔细的找了一下到底什么叫做字面量。

百度百科上面说:

在计算机科学中,字面量(literal)是用于表达源代码中一个固定值的表示法(notation)。
几乎所有计算机编程语言都具有对基本值的字面量表示,诸如:整数、浮点数以及字符串;
而有很多也对布尔类型和字符类型的值也支持字面量表示;还有一些甚至对枚举类型的元素以及像数组、
记录和对象等复合类型的值也支持字面量表示法。

其实简单理解,等号右边的值就是字面量。比如 var str="a"; "a"就是str的字面量;var num=1;1就是num的字面量。

不用理解太复杂,等号右边的值就是对应变量的字面量。


### Java 字面量的定义 在Java编程语言中,字面量是指直接用于表示固定值的数据项。这些值可以直接嵌入到程序代码之中而不需要额外声明或计算。对于不同基础数据类型而言,Java提供了多种类型的字面量来代表相应的具体数值。 #### 整型字面量 整数字面量默认情况下会被解释为`int`类型,其大小为32位有符整数[^1]。然而,在某些特定条件下,较小范围内的整数字面量也可以隐式地作为更短长度的整数类型处理: - 当一个不超过相应取值范围的小整数字面量被赋予`byte`或者`short`类型的变量时,并不会引发编译错误; - 同样地,只要该整数字面量处于合法范围内,则可安全地分配给目标类型而不必担心溢出问题[^2]。 ```java // 正确的例子 byte b = 10; // 符合byte的有效区间[-128, 127] short s = 500; // 符合short的有效区间[-32768, 32767] // 错误例子:超出有效范围会报错 byte errorByte = 2000; ``` #### 浮点型字面量 浮点数有两种形式——单精度(`float`)和双精度(`double`)。为了区分这两种情况,默认所有的浮点文字都是`double`类型;如果希望指定某个具体的浮点数为`float`类型,则需在其后面加上字母F/f。 ```java double dValue = 3.14; float fValue = 3.14f; ``` #### 字符串字面量 字符串字面量是由一对双引包围起来的一系列字符序列。值得注意的是,虽然String对象不是原始数据类型而是类实例,但在语法上允许将其视为一种特殊的字面量表达方式。此外,还可以通过诸如`Integer.parseInt()`这样的工具函数实现从字符串向其他基本类型的转换操作[^4]。 ```java String strLiteral = "Hello World!"; int numFromStr = Integer.parseInt("123"); ``` #### 布尔型字面量 布尔逻辑只有两个可能的状态:“真” (`true`) 和 “假” (`false`) ,它们同样属于字面量的一部分。 ```java boolean flagTrue = true; boolean flagFalse = false; ``` #### 特殊字面量 `null` 除了上述常规意义上的字面量之外,还有一个特别重要的成员叫做`null`,它用来指代没有任何引用的对象实例。 ```java Object objRef = null; ``` ### 使用注意事项 当涉及到不同类型之间的相互赋值时,应当注意潜在的风险以及必要的显式强制转型措施。特别是针对那些具有较窄存储空间的目标容器来说,确保源端提供的初始值确实位于许可界限之内是非常关键的一项工作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值