Сортировка по ключу и значениям здесь .. И есть ошибки, в частности, также
Напишите java-программу для чтения деталей самолета от пользователя и поиска различных производителей самолетов.
Протяните нить, чтобы найти самолеты каждого производителя и показать их.
Создайте основной класс Main.java
Создайте класс самолета со следующими атрибутами.
• имя – строка
• manufacturerName – строка
создайте конструктор для класса самолета с двумя аргументами name,manufacturerName
Создать еще один класс с Изготовление следующих атрибутов
• самолет -список<самолет>
• manufacturerAircraftMap - хранилище HashMap и Л;строка,список<строка&ГТ;&ГТ;
В хэш-карте manufacturerAircraftMap ключ-это имя производителя, а значение-список строк, соответствующих названиям самолетов.
Ключи должны быть отсортированы в порядке возрастания, а список значений также должен быть отсортирован в алфавитном порядке.
Расширения класса Thread и переопределить метод run.
В основном классе считайте входные данные от пользователя и создайте поток для производителя, чтобы найти различных производителей самолетов и отобразить детали
Формат ввода и вывода :
См. примеры ввода и вывода для получения спецификаций форматирования.
[Весь текст, выделенный жирным шрифтом, соответствует входу, а остальная часть - выходу]
Пример Ввода/Вывода:
Enter the number of aircrafts 6 Enter the aircraft 1 details A320 AirAsia Enter the aircraft 2 details A318 AirAsia Enter the aircraft 3 details A321 AirAsia Enter the aircraft 4 details 737 Boeing Enter the aircraft 5 details 777 Boeing Enter the aircraft 6 details BD500 Bombardier Manufacturer Details AirAsia A320 A318 A321 Boeing 737 777 Bombardier BD500
Что я уже пробовал:
public class Main { public static void main(String[] args) { Scanner sc = new Scanner(System.in); int m = sc.nextInt(); HashMap<String , List<string>> manufacturerAircraftMap = new HashMap<>(); sc.nextLine(); String name , manufacturerName; for(int i = 0 ; i<m ;i++) { System.out.print("Enter the aircraft " + i + "details :"); name = sc.nextLine(); manufacturerName = sc.nextLine(); manufacturerAircraftMap.put(name , (List<string>) new Aircraft( manufacturerName)); } } } class Aircraft { private String name; private String manufacturerName; public String getName() { return name; } public void setName(String name) { this.name = name; } public String getManufacturerName() { return manufacturerName; } public void setManufacturerName(String manufacturerName) { this.manufacturerName = manufacturerName; } public Aircraft(String name , String manufacturerName) { this.setName(name); this.setManufacturerName(manufacturerName); } } class Manufacturer extends Thread { private List<aircraft> aircraft; public void run() { } public List<aircraft> getAircraft() { return aircraft; } public void setAircraft(List<aircraft> aircraft) { this.aircraft = aircraft; } }
Richard MacCutchan
В чем же проблема?
Member 14050314
в этой строке есть ошибка
manufacturerAircraftMap.поставить(наименование , (список<строка> В) новых самолетов( manufacturerName));
и можете ли вы помочь мне отсортировать на основе названия и названия производителя как ключ, так и значения
Richard MacCutchan
Какая ошибка?
Richard MacCutchan
Вы не можете этого сделать. Вы пытаетесь сказать компилятору, что новый объект класса Aircraft на самом деле является List<string>
, которой она явно не является.
Patrice T
а у вас есть вопрос ?
OriginalGriff
И что же?
Что он делает такого, чего вы не ожидали, или не делает того, что вы сделали?
Где ты застрял?
Какая помощь вам нужна?
Member 14050314
в этой строке есть ошибка
manufacturerAircraftMap.поставить(наименование , (список<строка> В) новых самолетов( manufacturerName));
и можете ли вы помочь мне отсортировать на основе имени и имени производителя как ключ, так и значения
OriginalGriff
Какая ошибка?
И когда же?
Что вы делаете, чтобы получить ошибку?
Есть ли какие-либо сообщения об ошибках?
Помните, что мы не можем видеть ваш экран, получить доступ к вашему жесткому диску или прочитать ваши мысли - мы получаем только то, что вы печатаете для работы