У меня есть вопрос из двух частей. Поэтому я пишу код для назначения, которое пытается прочитать целые числа из текстового файла в качестве координат. Например, у меня есть текстовый файл с названием test1, который читает что-то вроде: 50 00 510 53 310 0. Теперь эти целые числа должны представлять координаты, означающие, что 50 фактически переводит в (5,0), (0,0), (5,10) и т. Д.
Я пытаюсь использовать сканер для ввода go в этот текстовый файл, выбрать первое число в этом двойном целом числе * git и сохранить его как " x "значение, а затем выберите второе число и сохраните его как значение" y ", а затем повторите промывку для остатка.
int nSheep = 0;
while (sc.hasNextLine()) {
nSheep++;
sc.nextLine();
}
Это мой текущий код для определения количества овец в текстовом файле. По сути, он просто читает количество строк, считает их и сохраняет в переменной nSheep. Таким образом, в моем примере файла test1 он вернул бы число 6.
for (int i = 0; i < nSheep; i++) {
while (sc.hasNextLine()) {
int x = sc.nextInt();
int y = sc.nextInt();
}
System.out.println(x);
}
Это моя попытка чтения целых чисел и сохранения их в переменных x и y. Я не могу сказать, близко ли это к работе, так как println ничего не печатает.
Наконец-то ...
xMin = xMax = sc.nextInt();
yMin = yMax = sc.nextInt();
//read the remaining coordinates
for (int i = 1; i <= nSheep - 1; i++) {
while (sc.hasNextInt) {
int x = sc.nextInt();
int y = sc.nextInt();
if (x < xMin)
xMin = x;
if (x > xMax)
xMax = x;
if (y < yMin)
yMin = y;
if (y > yMax)
yMax = y;
if (x < xMin)
xMin = x;
if (x > xMax)
xMax = x;
if (y < yMin)
yMin = y;
if (y > yMax)
yMax = y;
}
}
System.out.print("Fence Coordinates: {(" + xMin + "," + yMin + "), ");
System.out.print("(" + xMax + "," + yMin + "), ");
System.out.print("(" + xMax + "," + yMax + "), ");
System.out.println("(" + xMin + "," + yMax + ") ");
Это был успешный код, который работает, если я попросил пользователя ввести количество овец и определить их координаты. Единственное отличие от этого в том, что я не хочу, чтобы пользователь вводил данные, я просто хочу, чтобы сканер считывал текстовый файл, определял координаты, а затем распечатывал их. Если этот многословный вопрос имеет смысл, кто-нибудь может мне помочь?