ThinkChat2.0新版上线,更智能更精彩,支持会话、画图、阅读、搜索等,送10W Token,即刻开启你的AI之旅 广告
# Java 程序:使用三元运算符查找最小的三个数字 > 原文: [https://beginnersbook.com/2017/09/java-program-to-find-the-smallest-of-three-numbers-using-ternary-operator/](https://beginnersbook.com/2017/09/java-program-to-find-the-smallest-of-three-numbers-using-ternary-operator/) 这个 java 程序使用[三元运算符](https://beginnersbook.com/2017/08/operators-in-java/)找到三个数中最小的一个。让我们看看什么是**三元运算符**: 这个运算符计算一个布尔表达式并根据结果赋值。 ```java variable num1 = (expression) ? value if true : value if false ``` 如果表达式结果为`true`,则将冒号(`:`)之前的第一个值分配给变量`num1`,否则将第二个值分配给`num1`。 ## 示例:使用三元运算符编程以查找三个最小的数字 我们使用三元运算符两次得到最终输出,因为我们分两步完成了比较: 第一步:比较`num1`和`num2`,并将这两者中最小的一个存储到临时变量`temp`中。 第二步:比较`num3`和`temp`得到三个中最小的一个。 如果你愿意,你可以在一个语句中这样做: ```java result = num3 < (num1 < num2 ? num1:num2) ? num3:(num1 < num2 ? num1:num2); ``` 这是完整的程序: ```java import java.util.Scanner; public class JavaExample { public static void main(String[] args) { int num1, num2, num3, result, temp; /* Scanner is used for getting user input. * The nextInt() method of scanner reads the * integer entered by user. */ Scanner scanner = new Scanner(System.in); System.out.println("Enter First Number:"); num1 = scanner.nextInt(); System.out.println("Enter Second Number:"); num2 = scanner.nextInt(); System.out.println("Enter Third Number:"); num3 = scanner.nextInt(); scanner.close(); /* In first step we are comparing only num1 and * num2 and storing the smallest number into the * temp variable and then comparing the temp and * num3 to get final result. */ temp = num1 < num2 ? num1:num2; result = num3 < temp ? num3:temp; System.out.println("Smallest Number is:"+result); } } ``` 输出: ```java Enter First Number: 67 Enter Second Number: 7 Enter Third Number: 9 Smallest Number is:7 ```