翻阅古今
一种选择是将五个输入数字添加到一个数组中,然后使用流来查找最小值和最大值:int a = myScanner.nextInt();int b = myScanner.nextInt();int c = myScanner.nextInt();int d = myScanner.nextInt();int e = myScanner.nextInt();int[] vals = {a, b, c, d, e};int min = Arrays.stream(vals).min().getAsInt();int max = Arrays.stream(vals).max().getAsInt();System.out.println(min);System.out.println(max);另一种选择可能是使用集合(例如列表)来存储五个输入数字。然后,我们可以对该集合进行排序,并以这种方式找到最小值/最大值。使用某种集合可能是最好的方法。编辑:如果您必须使用if语句,那么一种选择可能是成对比较前两个和后两个数字,然后从结果三个数字中找到最小值/最大值。我改编了这个代码审查问题中的min和max方法。它找到三个数字的最小值和最大值,所以我们只需要提出额外的逻辑来将你的五个输入减少到三个。public static int min(int a, int b, int c) { if (a <= b && a <= c) return a; if (b <= a && b <= c) return b; return c;}public static int max(int a, int b, int c) { if (a >= b && a >= c) return a; if (b >= a && b >= c) return b; return c;}// now the logic for your inputs a, b, c, d, eint min1 = a <= b ? a : b;int min2 = c <= d ? c : d;int max1 = a >= b ? a : b;int max2 = c >= d ? c : d;int finalmin = min(min1, min2, e);int finalmax = max(max1, max2, e);