跟踪用户输入的整数的最大值和最小值

Keeping track of maximum and minimum of integers entered by the user

已解决

我想问用户他想输入多少个整数,然后读取所有数字,同时跟踪他们输入的最大和最小数字。然后打印最大和最小数。

我正在考虑将最大值和最小值设置为第一个输入的数字,然后在 for 循环中读取下一个数字,并用 bigger/smaller 数字更改最大值和最小值。 但是,它只打印用户输入的第一个数字。有人可以帮我解决这个问题吗?谢谢。

代码:

System.out.print("How many numbers do you want to type? ");
int n = scanner.nextInt();

System.out.print("Please enter a number: ");
int number = scanner.nextInt();
int currentMax = number;
int currentMin = number;

for(int i = 0; i < n-1; i++){
  System.out.print("Please enter a number: ");
  int nextNumber = scanner.nextInt();

  if (nextNumber > currentMax) {
    currentMax = nextNumber;
  }
  if (nextNumber < currentMin) {
    currentMin = nextNumber;
  }
}
System.out.println(currentMax);
System.out.println(currentMin);

你检查最大值和最小值的逻辑是正确的,但是赋值是错误的

for(int i = 0; i < n-1; i++){
  System.out.print("Please enter a number: ");
  int nextNumber = scanner.nextInt();

  if (nextNumber > currentMax) {
    //currentMax = number;  // here its always assigns number as current max as opposed to  nextNumber
      currentMax = nextNumber;
  }
  if (nextNumber < currentMin) {
    //currentMin = number; // here its always assign number as current minas opposed to  nextNumber
currentMin = nextNumber ;
  }