Начинающий на Java, используя старый учебник и Руководитель: Java книги, чтобы отобразить некоторые вещи.Сортировка параллельных массивов
У меня есть три массива все параллельно. Мне нужно иметь возможность сортировать по названию, автору или количеству страниц на основе выбора пользователя. Я могу сортировать один, используя Arrays.sort()
, но я получаю зависание о том, как сортировать остальные два массива, чтобы соответствовать новому отсортированному.
Скажем, я сортирую массив BookTitle
, но мне нужно будет отобразить соответствующий счетчик и количество страниц его соответствующих массивов, и я в тупике.
do
{
entry = JOptionPane.showInputDialog(null,
"Enter your sort preference: \n" +
"T = Sort by TITLE\n" +
"A = Sort by AUTHOR\n" +
"P = Sort by PAGE Count");
c = entry.charAt(0);
switch (c)
{
case 't':
case 'T':
Arrays.sort(BookTitle);
for (int x = 0; x < BookTitle.length; x++)
{
msg += ("Title: " + BookTitle[x] + "\n");
}
JOptionPane.showMessageDialog(null, msg);
isValid = true;
break;
case 'a':
case 'A':
isValid = true;
break;
case 'p':
case 'P':
isValid = true;
break;
default:
JOptionPane.showMessageDialog(null, "Invalid entry");
break;
}
} while (isValid == false);
Требуется ли они быть параллельны? Потому что лучший способ сделать это - иметь 1 массив объектов, где каждый объект содержит Title, Author и Count. – VoidStar
Поместите их все в один класс. Сортировка массива объектов этого класса. Или что-то типа того; Я не знаю Java. См. Http://stackoverflow.com/questions/4018090/sorting-listclass-by-one-of-its-variable –