Perl语言学习(三)Perl数据运算

您所在的位置:网站首页 连续指数幂相加 Perl语言学习(三)Perl数据运算

Perl语言学习(三)Perl数据运算

2024-07-12 13:16| 来源: 网络整理| 查看: 265

三、Perl数据运算

1、运算符

算术运算符 用来进行常用的数据计算 四则运算符 包括加、减、乘、除四种(+、-、*、/) 特殊的四则运算:使用字符串进行四则运算(字符串和整数进行相加) 乘幂运算符 对数据做幂指数操作,操作符为** 使用方法:$data = 5; $data2 = 3; $data3 = $data1**$data2; $data4 = $data3**3.5; 涉及到开方运算时,基数不能为负 乘幂结果不能超过计算机的显示范围 取余运算符 对数据进行取余操作,用%表示 使用方法:($data1,$data2) = (18,4); $data3 = $data1 % $data2; 取余的操作数不是整数时,对操作数进行取整后运算:$data = 18 % 2.6; ##相当于$data = 18 % 2,返回值为0 运算符的右侧不能为0 单目负运算符 属于单目操作符,表示数字的正负属性 使用方法:$data1 = -5; $data2 = -$data1; 自减操作符:两个减号-- 运算符的省略形式

对变量自身进行算术运算时,可使用省略形式

image.png 比较运算符 用于数据之间的大小、相等性比较 数字比较运算符

数据对象是数字值或者数字变量

image.png 字符串比较运算符

数据对象是字符串或者字符串变量

image.png 字符串的大小比较

在Perl中,基于字符串的ASCII码对字符串进行大小比较

image.png 逻辑运算符 用于逻辑判断,结果为"真"或"假",属于布尔类型 逻辑或:$a || $b, 或者$a or $b 逻辑与:$a && $b, 或者$a and $b 逻辑非:!$a 或者 not $a 逻辑异或:$a xor $b 逻辑运算符一般不单独使用,会和if,while等控制结构一起使用,返回值是0或1 位运算符 以“位“为单位,对数据进行修改等操作,多用于二进制运算 位与:& 位或:| 位非:~ 位异或:^ 左移:$x > 2 赋值运算符 对数据进行赋值操作 以等号“=”作为赋值标识,一般的赋值方式是数值拷贝 包括一些运算和等号一起的省略写法,如+=,-=,=,/=,%=,*= 另外还有.=, x=等字符串的赋值操作省略写法 等号可以在一个赋值语句中多次出现: $data1 = $data2 = $data3 = 5; 等号也可以作为子表达式:($a = $b) += 3;等价于$a = $b; $a = $a + 3; 其他运算符 自增自减运算符用于变量对自己本身的操作 ++ 自增运算符 值加1 -- 自减运算符 值减1 用法为:$data ++, ++ $data以及$data --, -- $data 运算符放在左边,变量本身及其返回值立马发生变化 运算符放在右边,返回值为原值,但变量本身要下一次才能发生变化 不能在变量两边都使用自增自减运算符 不能在变量自增或自减后在同一表达式中再次使用:$data2 = $data1 + ++$data1,这种表达式是错误的

在Perl中,自增运算符可以用于字符串,当结尾字符为"z","Z","9"时会进位

image.png 字符串连接和重复运算符 连接运算符:. 重复运算符:x $string1 = "begin"; $string1 = $string." here" ##$string = "begin here" $string1 = $string1 x 2; ##$string = "begin here begin here" 逗号运算符 可以用来提高程序的可读性,其前面的表达式先行运算 $var1 += 1, $var2 = $var1; $result = (++$var, $var + 5); 条件运算符 形式为:条件?值1:值2 当条件为真是取值1,为假是取值2 $result = $var == 0 ? 14 : 7; 在Perl5中,还可以在赋值式左边使用条件操作符来选择被赋值的变量 $convar = 43 ? $var1 = 14 : $var2 = 14;

2、运算符的优先级和结合性

定义 运算符的优先级指的是不同运算的先后顺序 运算符的结合性指的是运算符的运算方向 优先级和结合性 Perl中的所有运算符都有自己的优先级和固有结合性 优先级的粗略规则是,单目操作符优先级高于双目操作符

同等情况下,位运算高于逻辑运算高于赋值运算

image.png 写程序时,应多使用括号来进行优先级的自定义

参考来源:https://www.jikexueyuan.com/course/1279.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3