파일을 읽고 배열에 정보를 추가 한 다음 교환 순서를 사용하여 배열을 사전 순으로 정렬합니다. 문제는 내가 과제를 오해하고 문자열이 이미 입력 된 후에 별도의 정렬 방법을 사용하는 대신 배열에 입력 될 때 정렬해야한다는 것입니다. Heres는 내가 무엇을 :이 완벽 아직 작동배열을 입력 할 때 알파벳순으로 문자열 정렬 - Java
public class NumberCollection2
{
String nextName;
int nextNumber;
private Person[] people = new Person[50];
private int size =0;
public void load()
{
try
{
Scanner in = new Scanner(new File ("numbers.txt"));
while (in.hasNextLine())
{
nextName = in.next();
nextNumber = in.nextInt();
people[size]=new Person(nextName, nextNumber);
size++;
in.nextLine();
}
//use exchange sort to sort in ascending alphabetical order
int i, j;
for (i = 0; i < size - 1; i++)
{
for (j = i + 1; j < size; j++)
{
if (people[ i ].getName().compareTo(people[ j ].getName()) > 0)
{
Person temp = people [ i ];
people [ i ] = people [ j ];
people [ j ] = temp;
}
}
}
}
내 교수가 배열 "사람"에 입력으로 정렬되어야하며 내가 그에게 접근하는 방법을 잘 모르겠습니다. 모든 조언/도움이 끝내 주셔서 감사합니다 !!!
이것은 내가 저의 저서에서 얻은 이메일입니다 : "전체 크레디트를 받으려면 배열의 정렬 된 위치에 각 항목을 삽입해야합니다. 전체를 읽은 다음 정렬 루틴. "
하나의 요소를 다른 두 요소와 비교하여 두 개의 4 개의 루프를 비교하는 대신 루프 중 하나를 사용자 입력으로 바꾸는 것이 좋습니다. – aliteralmind