原文: https://beginnersbook.com/2017/09/java-program-to-find-largest-of-three-numbers-using-ternary-operator/

该程序使用三元运算符找到三个数中最大的一个。在完成程序之前,让我们了解什么是三元运算符:
三元运算符计算一个布尔表达式并根据结果赋值。

  1. variable num = (expression) ? value if true : value if false

如果表达式结果为true,则将冒号(:)之前的第一个值赋给变量num,否则将第二个值赋给num

示例:使用三元运算符编程以查找最大数字

在本程序中,我们使用三元运算符两次来比较这三个数字,但是您可以使用三元运算符比较一个语句中的所有三个数字,如下所示:

  1. result = num3 > (num1>num2 ? num1:num2) ? num3:((num1>num2) ? num1:num2);

但是,如果您发现难以理解,那么请使用它,就像我在下面的示例中所示:

  1. import java.util.Scanner;
  2. public class JavaExample
  3. {
  4. public static void main(String[] args)
  5. {
  6. int num1, num2, num3, result, temp;
  7. /* Scanner is used for getting user input.
  8. * The nextInt() method of scanner reads the
  9. * integer entered by user.
  10. */
  11. Scanner scanner = new Scanner(System.in);
  12. System.out.println("Enter First Number:");
  13. num1 = scanner.nextInt();
  14. System.out.println("Enter Second Number:");
  15. num2 = scanner.nextInt();
  16. System.out.println("Enter Third Number:");
  17. num3 = scanner.nextInt();
  18. scanner.close();
  19. /* In first step we are comparing only num1 and
  20. * num2 and storing the largest number into the
  21. * temp variable and then comparing the temp and
  22. * num3 to get final result.
  23. */
  24. temp = num1>num2 ? num1:num2;
  25. result = num3>temp ? num3:temp;
  26. System.out.println("Largest Number is:"+result);
  27. }
  28. }

输出:

  1. Enter First Number:
  2. 89
  3. Enter Second Number:
  4. 109
  5. Enter Third Number:
  6. 8
  7. Largest Number is:109