直接量(literal) 是指某个具体数值或字符串在Perl 源代码中的写法, 是不可变的, 所看即所得, 区别于变量. 最初看到直接量这个词有点儿陌生,其实java 一直也有,只是perl语言进行了单独的强调而已。
数字分为整数和浮点数, 但是在Perl 内部对数字都是按双精度(即浮点数)进行保存和运算的, 也就是说对Perl 本身而言并不存在整型常量.
perl 语言中数字直接量的写法比较灵活, 支持使用下划线, 可读性更强.
进制含义十进制0, 10, -10, 1_000_000, -1_000_000八进制0377, -0377, 01_00_00十六进制0xff, -0xff, -0x1_00_00perl 中字符串直接量分为单引号直接量和双引号直接量, 单引号所见即所得,不支持字符转义. 双引号支持字符转义.
字符串类型含义示例单引号不支持转义字符('除外)和变量内插, \和$就表示本身‘abc’, ‘$name’, ‘hello\nworld’双引号支持转义字符和变量内插, \表示转义字符, $表示标量引用“abc”, “$name”, “hello\nworld” $name = 'zhangsan'; $str1 = 'hello,$name'; $str2 = "hello,$name"; # 输出: str1:hello,$name print "str1:$str1\n"; # 输出: str2:hello,zhangsan print "str2:$str2\n";列表直接量是指在perl 源代码中一组数据的集合,由圆括号和都和分隔开. 列表直接量常用于数组赋值, 或多个标量的赋值.
列表赋值可用于标量的批量赋值或创建数组
# 列表赋值 ($user, $pwd) = qw(root 123456); # 列表直接量创建数组 @ints = (1..10);