У меня есть текстовый файл, который я прочитал, в котором уже есть список имен в алфавитном порядке. Я хочу прочитать каждое имя и расположить его в алфавитном порядке по длине имени в новом файле, который я создаю.
Кажется, у меня нет проблем с чтением из исходного файла и помещением имен во вновь созданный файл.
Однако мне нужно:
- все имена длины 1 должны быть перечислены в алфавитном порядке
- то имена длины 2
- затем 3 и так далее.
Код, который у меня есть прямо сейчас, получает все правильные имена для длин, которые я хочу, но он размещает все имена в том порядке, в котором они появляются в считываемом файле. Мой вопрос: как мне перечислить все имена длины 1, а затем все длины 2 и так далее в этом порядке?
Я также не могу использовать ничего общего с массивами.
This is what I get in the newly created file from the code i have.
A
Al
B
Bo
C
D
E
Ed
F
G
H
I
J
Jo
K
L
Lu
M
N
O
P
R
S
T
Ty
V
W
Wm
import java.io.*;
import java.util.*;
public class Lab11 {
public static Scanner input = new Scanner (System.in);
public static void main (String[] args) throws FileNotFoundException {
Scanner fileInput = new Scanner(new File("names.txt"));
PrintStream fileOut = new PrintStream(new File("results.txt"));
int count1 = 0;
int count2 = 0;
int sum = 0;
while (fileInput.hasNext()) {
String name = fileInput.next();
count1++;
if (name.length() == 1) {
count2++;
fileOut.println(name);
}
if (name.length() == 2) {
fileOut.println(name);
}
while (fileInput.hasNextInt()) {
sum += fileInput.nextInt();
}
}
System.out.println(count1);
System.out.println(count2);
}
}
Lab11
указывает на то, что это домашнее задание, но то, что вы пытались объяснить, кажется мне немного сложным, если только они не рассмотрели инструменты, необходимые для решения в классе (карты, наборы, сортировка и т. д.). - person Radiodef   schedule 07.11.2014