c++,java,python,scala,shell三目运算总结
创始人
2025-05-28 20:43:36

1.背景

实际工作场景中经常会有各种语言一起混编的情况,混编的时候经常会大脑短路把各种语法混淆,或者某种语言有一段时间没编写忘了的情况,比如三目运算。为了方便记忆查找,特此记录。

2.c++与java实现三目运算

c++ 与 java的语法中,都存在有标准的三目运算符。具体如下

c++代码:

void func() {int a = 3, b = 2;int maxnum = a > b ? a : b;cout<<"maxnum is: "<

java代码:

    public void test4() {int a = 3, b = 2;int maxnum = a > b ? a : b;System.out.println("maxnums is: " + maxnum);}

可以看出来,c++跟java里面都有标准的三目操作符? :,直接使用即可。

3.python三目运算

python语法里面是没有标准三目运算符的,可以使用if else语法来模拟三目运算很方便。

exp1 if contion else exp2
def func():a, b = 3, 2c = a if a > b else bprint(c)

4.scala三目运算

scala中也没有标准三目运算符? :,与python中类似,也可以用if else语句模拟三目运算。

  def func() = {val (a, b) = (3, 2)val maxnum = if (a > b) a else bprintln(maxnum)}

注意scala与python中if else表达式的不同在于,本质上是利用了scala中的自动推断语法,scala中任何表达式都是有值的,if else表达式的值是每个分支最后一行代码的结果。

5.shell三目运算

shell中也有类似的三目表达式,shell中也有?:这种语法,看下面的例子。

#!/bin/basha=3
b=2
c=$((a>b?a:b))
echo "c is: "$c

$(( ))表达式,配合?:三目运算符,就可以达到我们想要的效果。

相关内容

热门资讯

记者手记|时代大潮里的笃行与担... 来源:新华社记者手记|时代大潮里的笃行与担当新华社记者韩梁 朱瑞卿 伍岳9月的新德里草木葱郁,阳光热...
被骂 “君子之贼” 高若讷有点...     ◎宋慧敏    北宋景祐三年(1036年)一个春日,谏官高若讷接到一封信,写信人是刚刚入朝任...
烂缦胡同:烟火气里涌动青春创业...     近日,在“全国文化中心建设巡礼”主题采访活动中,北京青年报记者走进北京市西城区牛街街道烂缦胡...
科技赋能实体 金融护航出海     9月9日至13日,2026年中国国际服务贸易交易会(以下简称服贸会)在北京首钢园举办,今年的...
湖北大学最新或2023(历届)...   1、考生自最新或2023(历届)4月1日起可在湖北大学招生信息网(http://zsxx.hub...