精华内容
下载资源
问答
  • 三目运算符

    2021-03-09 18:02:20
    条件运算符是唯一有3个操作数运算符,所以有时又称为三元运算符。 **三目运算符:**是软件编程中一个固定格式为?: 。 三目运算符:一定要用于赋值语句。 三目运算表达式:<表达式1>?<表达式2>:<...

    三目运算符

    1. 三目运算符

    1.1 三目运算符的定义

    • 三目运算符:计算机C/C++的重要组成部分。条件运算符是唯一有3个操作数的运算符,所以有时又称为三元运算符
    • **三目运算符:**是软件编程中的一个固定格式为?: 。
    • 三目运算符:一定要用于赋值语句
    • 三目运算表达式:<表达式1>?<表达式2>:<表达式3>
      注:”?”运算符的含义是: 先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果 ; 如果表达式1的值为假,则执行表达式3 ,并返回表达式3的结果。

    1.2 三目运算符的应用

    • 普通条件判断
    t a=1, b=2, z;
    if (a>b)
    {
        z=a;//当a的数值比b的大时,将a的数值赋给z
    }
    else
    {
        z=b;//当b的数值比a的大时,将b的数值赋给z
    }
    =>z=2
    

    三目运算符实现的条件判断:条件成立赋左值,条件不成立赋右值

    int a=1, b=2, z;
    z =  (a>b) ? a : b;//条件成立赋左值z=a,条件不成立赋右值z=b
    =>z=2
    

    1.3 三目运算允许对不同类型的数值进行操作

    • 数值向高级转化后再比较求值
    #include<iostream>
    
    using namespace std;
    int main()
    {
        int a=1; 
        float b=2.1;
    
        //cout<<(a>b) ? a:b<<endl;//错,编译不通过,要用括号括起来,因为优先级问题
        cout<<((a>b) ? a:b)<<endl;//对
    
        system("pause");
        return 0;
    }
    编译警告:warning C4305: “初始化”: 从“double”到“float”截断
    => 2.1
    // 看不懂c
    
    展开全文
  • "和":",要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算符。它的一般形式为:表达式1?表达式2:表达式3;以下是关于条件运算符的几点说明:(1) 表达式1是关系表达式或逻辑表达式,用于描...

    1eee8c7dd1fcd22225e81d267497d30d.png

    三目运算符详解

    对于有些选择分支结构,可以使用简单的条件运算符来代替。如:if(a

    min=a;

    else

    min=b;

    可以用下面的条件运算符来处理min=(a

    其中"(a

    条件运算符由两个符号组成"?"和":",要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算符。

    它的一般形式为:表达式1?表达式2:表达式3;

    以下是关于条件运算符的几点说明:

    (1) 表达式1是关系表达式或逻辑表达式,用于描述条件,表达式2和表达式3可以是常量,变量或表达式。如:(x==y)?'Y':'N'

    (d=b*b-4*a*c)>=0?sqrt(d):sqrt(-d)

    ch=(ch>='A'&&ch<='Z')?(ch+32):ch

    以上均为合法的条件表达式。

    相关推荐:《常见问题》

    (2) 执行顺序:先求解表达式1,若值为非0,表示条件为真,则求表达式2,此时表达式2的值就作为整个条件表达式的值;

    若表达式1的值为0,表示条件为假,则求解表达式3,表达式3的值就是整个条件表达式的值。例如:

    (a>=0)?a:-a   执行结果是a的绝对值

    (3) 在程序中,通过把条件表达式的值直接赋予某个变量。例如:

    min=(a

    (4) 条件表达式的优先级别仅高于赋值运算符,而低于前面遇到过的所有运算符。

    因此,min=(a

    (5) 条件运算符的结合方向为"自右至左"。

    (6) 条件表达式允许嵌套,即允许条件表达式中的表达式2和表达式3又是一个条件表达式。例如:x>0?1:x<0?-1:0

    上述条件表达式中,表达式3部分又是一个条件表达式。根据条件表达式的结合性,上述条件表达式等价于:x>0?1:(x<0?-1:0)

    其作用是判断x的符号情况。当x为正数时,该条件表达式的值为1;当x为负数时,该条件表达式的值为-1;当x为0时,该条件表达式的值为0。

    (7) 条件表达式仅当if语句中内嵌的语句为赋值语句(且两个分支都给同一变量赋值)时才能代替if语句。如:if(a%2==0)

    printf("even/n");

    else

    printf("odd/n");

    不能写成:(a%2==0)?printf("even/n"):printf("odd/n");

    但可以用下面语句代替:printf("%s/n",(a%2==0?"even":"odd");

    该语句的作用是:若 a 为偶数,输出 even;若 a 为奇数,输出odd。

    (8) 表达式1,表达式2,表达式3的类型可以不同。此时条件表达式的值的类型为它们中较高的类型。例如:main() {

    char c1, ch;

    ch = getchar();

    c1 = ch <= 'Z' && ch >= 'A' ? ' @ ' : ch ;

    putchar(c1);

    }

    该程序的作用是从键盘输入任意一个字符,判别它们是否大写字母,如果是,输出一个@;否则按原样输出do上例中,程序第6行是关键语句,该语句实现输入字符的判断了,选择与更换工作。

    其执行过程为:先由此语句中的赋值号右侧的条件运算符对输入的字符进行判断和选择,若ch>='A'&&ch<='Z'成立,说明ch是大写英文字母,此时选@;否则仍选原字符ch,然后把选择的结果赋值给原变量ch 。

    展开全文
  • JAVA 三目运算符

    2019-07-16 12:20:05
    一般来说,三目运算符的结合性是右结合。其实三目运算符可以看作是简写if判断语句。 格式 比较表达式?表达式1:表达式2; 根据比较表达式计算返回一个true或者false。 如果是true,就把表达式...

    JAVA 三目运算符

    三目运算符

    三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合的。其实三目运算符可以看作是简写的if判断语句。

    格式

    比较表达式?表达式1:表达式2;

    根据比较表达式的计算返回一个true或者false。
    	如果是true,就把表达式1作为结果。
    	如果是false,就把表达式2作为结果。
    

    案例

    1.比较两个数据是否相等

    class OperatorDemo {
    	public static void main(String[] args) {
    		int x = 100;
    		int y = 200;
    		
    		
    		//判断是否相等
    		boolean flag = (m == n);
    		System.out.println(flag);
    		
    		//判断大小
    		int z = ((x > y)? x: y);
    		System.out.println("z:"+z);
    	}
    }
    

    运行结果:
    在这里插入图片描述
    2.取最大值

    class OperatorTest {
    	public static void main(String[] args) {
    		//获取两个整数中的最大值
    		int x = 100;
    		int y = 200;
    		
    		int max = (x > y? x: y);
    		System.out.println("max:"+max);
    		System.out.println("--------");
    		
    		//获取三个整数中的最大值
    		int a = 10;
    		int b = 30;
    		int c = 20;
    		
    		//分两步:
    		//A:先比较a,b的最大值
    		//B:拿a,b的最大值在和c进行比较
    		int temp = ((a > b)? a: b);
    		//System.out.println(temp);
    		int max1 = (temp > c? temp: c);
    		System.out.println("max1:"+max1);
    		
    		//一步搞定
    		//int max2 = (a > b)?((a > c)? a: c):((b > c)? b: c);
    		//这种做法不推荐。
    		//int max2 = a > b?a > c? a: c:b > c? b: c;
    		//System.out.println("max2:"+max2);
    		System.out.println("--------");
    		
    		//比较两个整数是否相同
    		int m = 100;
    		int n = 200;
    		
    		//boolean flag = (m == n)? true: false;
    		boolean flag = (m == n);
    		System.out.println(flag);
    	}
    }
    

    运行结果
    在这里插入图片描述

    展开全文
  • 三目运算符使用

    万次阅读 多人点赞 2019-07-28 20:30:43
    一般来说,三目运算符的结合性是右结合。 定义: 对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b值为true,计算x值,运算结果为x值;否则,计算y值,运算结果为y值。一个条件表达式绝不会既...

    撰写时间:2019年07月27日
    三目运算符,又称条件运算符,是计算机语言(c,c++,java等)的重要组成部分。它是唯一有3个操作数的运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合的。

    定义:

    对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b的值为true,计算x的值,运算结果为x的值;否则,计算y的值,运算结果为y的值。一个条件表达式绝不会既计算x,又计算y。条件运算符是右结合的,也就是说,从右向左分组计算。例如,a ? b : c ? d : e将按a ? b : (c ? d : e)执行。加括号()是为了方便阅读,不加也是一样的。
    可以理解为"(a<b)?a:b"是一个"条件表达式",它是这样执行的: 如果a<b为真,则表达式取a值,否则取b值.条件运算符由两个符号组成"?“和”:", 要求有3个操作对象,所以也叫它三目运算符,
    (1)它的一般形式为:<表达式1> ? <表达式2> : <表达式3>; "?"运算符的含义是:先求表达式1的值,如果为真,则执行表达式2,并返回表达式2的结果;如果表达式1的值为假,则执行表达式3,并返回表达式3的结果。
    (2)通常情况下,表达式1是关系表达式或逻辑表达式,用于描述条件表达式中的条件,表达式2和表达式3可以是常量,变量或表达式.
    (3)在程序中,通过把条件表达式的值直接赋予某个变量.

    	 A=(b>c)?d:e
    

    (4)条件表达式的优先级别仅高于赋值运算符,而低于前面遇到过的所有运算符.
    因此,min=(a<b)?a:b括号可以不要,可直接写成,min=a<b?a:b如果有x<y?x+1:y-1等效于x<y(x+1):(y-1)而不等效于(x<y?x+1:y)-1
    (5) 条件运算符的结合方向为"自右至左".
    (6) 条件表达式允许嵌套,即允许条件表达式中的表达式2和表达式3又是一个条件表达式.例如:下面的例子
    EL表达式中使用三目运算符:
    单个判断:

    ${postNum == null ? 0 : postNum}
    Servlet:
        PwPersonalDetails personalDetails=pwPersonalDetailsService.
        findById(borrowerId);//查询个人信息
        request.setAttribute("personalDetails", personalDetails);//传参
     jsp:
    
    
      <div>
        <p>有无购车:</p>
        <p id="PurchaseCar">
        ${personalDetails.purchaseCar eq true ? "有购车":"无购车"}
        </p>
      </div>
    

    EL表达式结合三目运算符多个判断条件写法:
    比如:我后台查询出来的borrowMoney(表单)数据有bidTypeId(标种类型)分别为1-7七种:我要传递到前端html给一个p标签根据bidTypeId不同给予不同的名称:
    现在直接将多个三目运算符拼成多个条件的写法:

    ${borrowMoney.bidTypeId eq 1 ? '信用额度:':(borrowMoney.bidTypeId eq 2 ? '抵押额度:':(borrowMoney.bidTypeId eq 5 ? '担保额度:':(borrowMoney.bidTypeId eq 7 ? '流转额度:':'信用额度:')))}
    
    展开全文
  • C语言中唯一的一个三目运算符(条件运算符) “(a>b)?a:b”是一个条件表达式,如果(a>b)条件为真,则条件表达式去值a,否则取值b。 一般形式:表达式1?表达式2:表达式3,它是C语言中唯一的一个三目...
  • "和":", 要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算符.它的一般形式为:表达式1?表达式2:表达式3;以下是关于条件运算符的几点说明:(1)通常情况下,表达式1是关系表达式或逻辑表达式,用于描...
  • C语言 三目运算符

    万次阅读 多人点赞 2018-10-27 20:48:29
    1.运算方向从左往右,从右往...一般来说,三目运算符的结合性是右结合。 对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b值为true,计算x值,运算结果为x值;否则,计算y值,运算结果为y值...
  • #python中三目运算符

    2018-10-10 11:06:59
    , 要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算符. 它的一般形式为: 表达式1?表达式2:表达式3; 条件表达式的执行顺序为:先求解表达式1,若值为非0,表示条件为真,则求解表达式2,此时表达式...
  • 一般来说,三目运算符的结合性是右结合。 定义 对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b值为true,计算x值,运算结果为x值;否则,计算y值,运算结果为y值。一个条件表达式...
  • 三目运算符和if判断

    2021-04-05 17:26:14
    一般来说,三目运算符的结合性是右结合。 定义: 对于条件表达式b ? x : y,先计算条件b,然后进行判断。如果b值为true,计算x值,运算结果为x值;否则,计算y值,运算结果为y值。一个条件表达式绝不会...
  • Java 三目运算符

    2015-07-24 09:17:46
    对于有些选择分支结构,可以使用简单的条件运算符来代替.如: 引用 if(a  min=a;..."和":",要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算符.它的一般形式为:
  • C语言三目运算符

    2020-02-07 09:33:58
    条件运算符(唯一的三目运算符) 一般形式:表达式1?表达式2:表达式3 常见问题就是比大小 当表达式1为真(1)时用表达式2作为作为整个条件表达式的值 当表达式1为假(0)时用表达式3作为作为整个条件表达式的值 ...
  • 三目运算符,又称条件运算符,是计算机语言(c,c++,java等)重要组成部分。它是唯一有3个操作数运算符,有时又称为三元运算符。 定义: 条件运算符是一个三目运算符,该运算符需要3个运算数对象,形式如下:...
  • JAVA中的三目运算符

    2016-11-08 18:12:57
    对于有些选择分支结构,可以使用简单的条件运算符来代替. 如: if(a  min=a; else  min=b; 可以用下面的条件运算符来处理 ..."和":", 要求有3个操作对象,所以也叫它三目运算符,它是C语言中唯一的三目运算
  • 条件运算符是唯一有3个操作数运算符,所以有时又称为三元运算符。三目运算符:是软件编程中一个固定格式为?: 。三目运算符:一定要用于赋值语句。三目运算表达式:&lt;表达式1&gt;?&lt;表达式2&...
  • else 和 switch 语句,还有一个唯一的三目运算符 ? ... : ,也可用于简单的选择结构。 语法:  conditions ? statementA : statementB ; 上述语句,首先判断条件condition,若结果为真则执行语句statementA...
  • JavaScript三目运算符

    千次阅读 2016-12-14 15:07:42
    else 和 switch 语句,还有一个唯一的三目运算符 ? ... : ,也可用于简单的选择结构。 语法:  conditions ? statementA : statementB ; 上述语句,首先判断条件condition,若结果为真则执行语句...
  • C++基础---三目运算符

    万次阅读 多人点赞 2015-08-15 18:45:57
    条件运算符是唯一有3个操作数运算符,所以有时又称为三元运算符。 三目运算符:是软件编程中一个固定格式为?: 。 三目运算符:一定要用于赋值语句。 三目运算表达式:<表达式1>?<表达式2>:<表达式3> 注:”?...
  • c--三目运算符

    千次阅读 2017-12-27 19:15:41
    三目运算符,又称条件运算符,指是计算机语言(c,c++,java等)重要组成部分。它是唯一有3个操作数运算符,所以有时又称为三元运算符。一般来说,三目运算符的结合性是右结合。 对于条件表达式b ? x : y,先...
  • C语言:三目运算符

    2014-11-01 21:58:00
    条件运算符是C语言的唯一的三目运算符,即它需要3个数据或表达式构成条件表达式 它的一般形式为:  表达式1?表达式2:表达式3 如果表达式1为真,三目运算符的运算结果为表达式2的值,否则为表达式3的值 ...
  • C语言中唯一的三目运算符由 ? :组成 它的一般形式: 表达式1 ? 表达式2 : 表达式3; 如果表达式1的值为真,那么就返回表达式的值,否则返回表达式二的值。 【注意】:在c语言中表达式返回的是一个数值。 ...

空空如也

空空如也

1 2 3 4 5 6
收藏数 120
精华内容 48
关键字:

唯一的三目运算符是