Я должен нам Map<String, ArrayDeque<class_Object>>
для хранения данных. т. е. класс, в котором хранятся String name
, double price
и int amount
.
. Я хотел бы знать, какова совокупная сумма по всем экземплярам класса в ArrayDeque
.
Я не могу использовать метод iterator()
, потому что это нестатический метод, и я хотел бы использовать его в статическом контексте.
Я пытался использовать iterator()
, но если я не вернусь и не перепишу хороший кусок кода, я не смогу его использовать. Я просмотрел Javadoc Oracle и не вижу других методов класса для просмотра первого и последнего элемента.
import java.util.*;
public final class Menu {
private static Scanner scanner = new Scanner(System.in);
private static Map<String, ArrayDeque<Block>> stockInfo = new LinkedHashMap<>();
private static final int VALID_CODE_LENGTH = 3;
private static final String MENU_TABLE = " a. Buy (B or b)\n b. Sale (S or s)\n c. Exit (E or e)\n";
public void launch() { menu("Choose option: "); }
private static void buyStock() {
var symbolCode = symbolInput(); // more to larger scope.
Block block = new Block(symbolCode, priceInput(), amountInput());
var arrayDeque = Menu.stockInfo.getOrDefault(symbolCode, new ArrayDeque<Block>());
arrayDeque.addFirst(block);
Menu.stockInfo.put(symbolCode, arrayDeque);
System.out.println(Menu.stockInfo);
}
private static void sellStock() {
var symbolCode = ""; // move to larger scope.
do {
symbolCode = symbolInput(); // implement a method for this?
} while (!stockInfo.containsKey(symbolCode));
var arrayDeque = Menu.stockInfo.getOrDefault(symbolCode, new ArrayDeque<Block>());
var stockPrice = priceInput();
var stockAmount = amountInput();
}
private static boolean isValidAmount(int amountInput) {
//Iterator iterator = ArrayDeque.iterator();
return true;
}
Я должен быть в состоянии найти общее количество amount
для всех объектов класса. Если потребуется дальнейшее объяснение или дополнительный код, я с радостью предоставлю.