gpt4 book ai didi

java - 如何在 6 次读取 6 个整数后停止扫描仪?

转载 作者:行者123 更新时间:2023-11-29 03:17:28 26 4
gpt4 key购买 nike

我现在正在学习 Java,但遇到了一个问题。该程序确定第三个点是否在笛卡尔坐标系中的矩形内。第一个点是矩形的左上角,第二个点是右下角。您必须这样输入:a b c d e f,其中 left(a,b) 和 right(c,d)。 E和f是第三点的点。我希望扫描器在 6 个整数后停止,因此无需填写非整数,如“结束”。这是我的代码的一部分:

import java.util.Scanner;

public class Rectangle {
Scanner scanner = new Scanner(System.in);

void insideRectangle() {

int coordinate;
int a;
int b;
int c;
int d;
int e;
int f;

System.out.println("Please fill in the numbers (6 maximum), with spaces in between");

a = 0;
b = 0;
c = 0;
d = 0;
e = 0;
f = 0;

while ( scanner.hasNextInt() ) {
coordinate = scanner.nextInt();
a = coordinate;
coordinate = scanner.nextInt();
b = coordinate;
coordinate = scanner.nextInt();
c = coordinate;
coordinate = scanner.nextInt();
d = coordinate;
coordinate = scanner.nextInt();
e = coordinate;
coordinate = scanner.nextInt();
f = coordinate;
}

if ( a > c ) {
System.out.println("error");
} else if ( b < d) {
System.out.println("error");
} else if ( e >= a && c >= e && f <= b && d <= f ) {
System.out.println("inside");
} else {
System.out.println("outside");
}
}
}

最佳答案

尝试:

int[] values = new int[6];
int i = 0;
while(i < values.length && scanner.hasNextInt()) {
values[i++] = scanner.nextInt();
}

然后该数组包含您的 6 个值。

关于java - 如何在 6 次读取 6 个整数后停止扫描仪?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25701232/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com