zoukankan      html  css  js  c++  java
  • 条件运算符

     1件运算符 (?:) 根据布尔型表达式的值返回两个值中的一个。条件运算符的格式如下 
     2
     3  复制代码 
     4condition ? first_expression : second_expression;
     5 
     6
     7备注
     8如果条件为 true,则计算第一表达式并以它的计算结果为准;如果为 false,则计算第二表达式并以它的计算结果为准。只计算两个表达式中的一个。
     9
    10使用条件运算符,可以更简洁、雅观地表达那些否则可能要求 if-else 结构的计算。例如,为在 sin 函数的计算中避免被零除,可编写为
    11
    12  复制代码 
    13if(x != 0.0) s = Math.Sin(x)/x; else s = 1.0;
    14 
    15
    16或使用条件运算符,
    17
    18  复制代码 
    19= x != 0.0 ? Math.Sin(x)/x : 1.0;
    20 
    21
    22条件运算符为右联运算符,因此该形式的表达式
    23
    24  复制代码 
    25? b : c ? d : e
    26 
    27
    28按如下规则计算:
    29
    30  复制代码 
    31? b : (c ? d : e)
    32 
    33
    34而不是按照下面这样计算:
    35
    36  复制代码 
    37(a ? b : c) ? d : e
    38 
    39
    40不能重载条件运算符。
    41
    42示例
    43  复制代码 
    44// cs_operator_conditional.cs
    45using System;
    46class MainClass
    47{
    48    static double sinc(double x) 
    49    {
    50        return x != 0.0 ? Math.Sin(x)/x : 1.0;
    51    }

    52
    53    static void Main() 
    54    {
    55        Console.WriteLine(sinc(0.2));
    56        Console.WriteLine(sinc(0.1));
    57        Console.WriteLine(sinc(0.0));
    58    }

    59}

    60 
    61
    62输出
    63  
    640.993346653975306
    650.998334166468282
    661
    67 
    68
  • 相关阅读:
    (转载)C++ string中find() ,rfind() 等函数 用法总结及示例
    UVA 230 Borrowers (STL 行读入的处理 重载小于号)
    UVA 12100 打印队列(STL deque)
    uva 12096 The SetStack Computer(STL set的各种库函数 交集 并集 插入迭代器)
    uva 1592 Database (STL)
    HDU 1087 Super Jumping! Jumping! Jumping!
    hdu 1176 免费馅饼
    HDU 1003 Max Sum
    转战HDU
    hust 1227 Join Together
  • 原文地址:https://www.cnblogs.com/tiasys/p/605240.html
Copyright © 2011-2022 走看看