Для цикла не работает в случае - PullRequest
0 голосов
/ 07 декабря 2018

У меня проблема с тем, что мой цикл for, кажется, не выполняется в моем операторе if, цикл for должен печатать все значения в моем списке.

import java.util.*;

public class kapitel12 {

public static void main(String[] args) 
{

    Scanner scan = new Scanner(System.in);
    List<Float> temperatur = new ArrayList<Float>();

    while(true)
    {           
        System.out.println("[L]ägg till temperaturmätning");
        System.out.println("[S]kriv ut alla temperaturer och medeltemperatur");
        System.out.println("[T]ag bort temperaturmätning");
        System.out.println("[A]vsluta");

        String val = scan.next();

        if (val.equals("L") || val.equals("l"))
        {
            System.out.println("Lägg till temperatur");

            float temp = Float.parseFloat(scan.next());
            temperatur.add(temp);
            System.out.println(temperatur);
        }
        else if (val.equals("S") || val.equals("s")) 
        {
            System.out.println("Alla mätningar");


            for(int i = 0; i < temperatur.size(); i++)
            {
                System.out.println("Mätning" + i + ":" + temperatur.get(i));

            }
    }       
}   
}

Ответы [ 2 ]

0 голосов
/ 07 декабря 2018

логические условия во вложенном операторе if являются взаимоисключающими, только одно из них будет выполнено одновременно, если условие выполнено.

Поскольку val может иметь одно значение за один раз, например, если val="S" кодовый блок в первом if не будет выполнен, в результате чего ваш v=temperatur будет пустым, поскольку это первый блок, который добавляет к нему элементы.

0 голосов
/ 07 декабря 2018

Цикл работает, но размер temperatur равен 0, это означает, что циклы заканчиваются без конца. temperatur заполняется в предложении если , но если вы перейдете к , если , то следующее предложение еще, если не будет выполнено.

Вы должны заполнить temperatur перед чтением списка или определить temperatur как класс var, а не как локальный var.

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