Я создал простой класс предметов;Java ArrayList/RMI
class itemInfo{
int auctionID;
int startPrice;
int buyoutPrice;
}
Я создал ArrayList;
ArrayList<itemInfo> itemSet = new ArrayList<itemInfo>();
У меня также есть метод здесь, что позволяет пользователю создать элемент (метод является неполным, я только пытался реализации выбора == 1 до сих пор!);
public void auctionChoice(){
System.out.println("---- What would you like to do? ----\n");
System.out.println("1: List an item for auction\n");
System.out.println("2: Bid on an existing item\n");
System.out.println("3: Remove an item from the auction\n");
if(scanner.next().equals("1")){
itemInfo createdItem = new itemInfo();
System.out.println("----Enter the auctionID----");
createdItem.auctionID = scanner.nextInt();
System.out.println("----Enter the item startPrice----");
createdItem.startPrice = scanner.nextInt();
System.out.println("----Enter the buyoutPrice----");
createdItem.buyoutPrice = scanner.nextInt();
System.out.println("Auction ID:" +createdItem.auctionID+ "\nstartPrice:" +createdItem.startPrice+ "\nbuyoutPrice:" +createdItem.buyoutPrice);
itemSet.add(createdItem);
}
}
То, что я застрял на строит метода, который позволит пользователю просматривать список текущих аукционов элементов, в основном способ распечатать НИКАКИЕ гарантии ArrayList.
Я изучил использование toString(), но я не уверен, как получить его, чтобы вернуть более одного значения, например, на аукционеID, startPrice, buyPrice.
В идеале я хотел бы, чтобы пользователь выбрал такой вариант, как «просмотр текущих аукционов», а затем метод печати всего массива ArrayList в формате «Идентификатор аукциона: **** Стартовая цена: **** Цена выкупа: **** ", очевидно, что это номер, который введен пользователем.
Рад, что это помогло, пожалуйста, прочитайте последний бит, который я добавил, как это поможет вам улучшить сделать код более легким в обслуживании и проще работать с в будущем. – ThePerson
Это очень помогло, спасибо! Также спасибо за общие советы по моему коду, пытаясь быть как можно более изящными. Просто спросите с помощью метода case/switch, есть ли способ, который после того, как пользователь выбрал «1», ввел все переменные (auctionID и т. Д.), Код автоматически вернется к повторному выбору меню? Надеюсь, это имеет смысл. –
Это имеет смысл. Возможно, вы захотите использовать цикл для этого. Подумайте о том, чтобы создать цикл для вызова метода methodChoice(). В зависимости от того, когда вы хотите остановиться, вам нужно выбрать соответствующий цикл из do, for или while. Например, я бы подумал, что вы можете добавить в свое меню вариант выхода. – ThePerson