Как вывести минимальные и максимальные значения из списка? - PullRequest
0 голосов
/ 02 мая 2019

Мне нужно отобразить минимальные и максимальные текущие цены из списка, но я могу отображать только число в конце

public StockPrice() {
    char startChar = 'A';
    String tmpSymbol = null;
    int startPrice = 0;
    int priceRightNow = 0;
    for (int idx = 0; idx < MAX_STOCKS; ++idx) {

        tmpSymbol = "" + (char) (startChar + idx) + (char) (startChar + idx + 1) + (char) (startChar + idx + 2);

        startPrice = ThreadLocalRandom.current().nextInt(minStockPrice, maxStockPrice + 1);

        priceRightNow = ThreadLocalRandom.current().nextInt(minStockPrice, maxStockPrice + 1);

        myStocks[idx] = new Stock(tmpSymbol, startPrice, priceRightNow);
        System.out.println(myStocks[idx]);

        System.out.println();

    }
    int[] val = {priceRightNow};
    List<Integer> myStocks = new ArrayList<Integer>();
    for (Integer number : val ) {

        myStocks.add(number);
    }

    System.out.println("The current lowest stock price is  "  + tmpSymbol +Collections.min(myStocks));
    System.out.println("The current highest stock price is  "+ tmpSymbol +Collections.max(myStocks));
}

Ответы [ 2 ]

0 голосов
/ 02 мая 2019

Ваш массив val содержит последние priceRightNow. Все, что вы делаете в предыдущих итерациях цикла, не имеет значения. Затем вызов ArrayList создает новый пустой список, и вы добавляете (только) значение val в этот список. Таким образом, максимум и минимум этого списка являются последними priceRightNow

0 голосов
/ 02 мая 2019

Вы переопределяете свою переменную .. collection.min, max должен получить ваши min, max значения из списка.

public class Test {

    public static void main(String args[]) {

        ArrayList<Integer> integerList = new ArrayList<>();
        integerList.add(10);
        integerList.add(1);
        integerList.add(12);

        System.out.println("MIN : "+Collections.min(integerList));
        System.out.println("MAX : "+Collections.max(integerList));

    }
}

этот пример кода приведет вас к выводу ниже.

MIN : 1
MAX : 12
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...