Ребята, я начинающий в программировании. Выбрал Java. По мере изучения учебников, ставлю собой небольшую задачу (на базе полученных знаний) и придумываю всякие программы. Вот например программа (очень простая) , но ломаю голову уже который час!
Программа спрашивает пользователя какую марку машины он хочет добавить в автопарк?
Пользователь (по номеру) вводит ее и так для всех параметров хочу сделать.
Класс Cars , в конструкторе 3 параметра.
Создал ArrayList и каждый раз (при добавлении машины в автопарк) добавляется в List новый объект класса Cars.
Так вот все бы хорошо, но как изменить значение параметра объекта в ArrayList!?
//Создание массиваArrayList из объекта Cars
ArrayList UnitCar = new ArrayList();
//UnitCar.add(new Cars("Honda", "Hatchback", 150));
//Заполнение массива
//Заполнение ArrayList пользователем:
while(true){
//Создание сканнера, считывающего нажатие:
Scanner sc = new Scanner(System.in);
//Добавление объекта в ArrayList
UnitCar.add(new Cars(null, null, 0));
System.out.println("Выберете марку автомобиля:");
System.out.println("1: Honda, 2: Subaru, 3: Ford, 4: Chevrolet, 5: Nissan, 0: завершение программы ");
//Создание массива типа int, в котром будут хранится 3 параметра автомобиля
//Марка, тип кузова, максимальная скорость.
int ChooiseCar[] = new int[2];
//Ввод пользователем
ChooiseCar[0] = sc.nextInt();
System.out.println("Выберете тип кузова:");
System.out.println("1: Седан, 2: Хэтчбэк, 3: Универсал, 4: Кроссовер");
ChooiseCar[1] = sc.nextInt();
System.out.println("Выберете макимальную скорость (км/ч):");
ChooiseCar[2] = sc.nextInt();
//Создание объектов, по параметрам введденными пользоваталем:
//Марка автомобиля
if (ChooiseCar[0] == 1)
{
**UnitCar.set(0("Honda", null, 0));**
}
UPDATE:
Все поправил, все работает, объект настраивается пользователем как надо (все выводит как настроено) , но я опять-таки не могу добавить свой объект в ArrayList , как правильно это сделать?
System.out.println("Ваш первый автомобиль:");
System.out.println("Марка: " + machine.getBrand());
System.out.println("Кузов: " + machine.getType());
System.out.println("Максимальная скорость: " + machine.getMaxSpeed() + " к/ч");
break;
**CarList.add(machine(null, null, 0));**
//Знаю, что здесь должны быть методы getX , null'ы для проверки ввел, и все-равно, никак параметры не настроить...
UPDATE:
Господи все дело было в том, что добавление объекта в ArrayList было после break основного цикла :-) извините за идиотские вопросы :_)
Воспользуйтесь методом set(int index, Cars newVal); index - можно получить методом indexOf(Cars value); Для того чтобы это работало вам необходимо в вашем классе Cars переопределить метод equals.
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
Есть лист объектов с каким-то количеством полей среди которых есть типЕсть Map<String, String> в первом поле которого тип, а во втором вес
Всем приветКак можно сменить (а можно ли) шрифт текста в TabLayout и TabItem в Android приложении?
Создаю абсолютно чистый проект, хочу сделать коммит в BitBucket и выскакивает ошибка для многих файлов:
Каким образом можно получить список файлов в директории?