首页 > 解决方案 > java中的arraylist,打印出所有数据

问题描述

我现在正在学习 Java,我正在尝试ArrayList在我的项目中使用,但它不起作用。请帮忙...

public class TestCalculator {
    public static void main(String[]args){

        ArrayList<BMICalculator> bmilist = new ArrayList<>();
        //ArrayList<Double> bmilist = new ArrayList<Double>();
        do {
            double lengte = getLength("Geef de lengte in Meters:");
            double gewicht = getGewicht("Geef het gewicht in Kg:");
            BMICalculator bmi = new BMICalculator(lengte, gewicht);
            bmi.setBmi(bmi.calculateBMI());
            bmilist.add(bmi);

            for(double i = 0;i < bmilist.size(); i++){
                //System.out.println(i);
                JOptionPane.showMessageDialog(null, "List:" + i);

            }

            JOptionPane.showMessageDialog(null, "Bmi: " + String.format("%s", bmi.toString()));

        } while(getUserAnswer() == 'J');

    }

    public static double getLength(String message){
        String lengte = JOptionPane.showInputDialog(message);
        return  Double.parseDouble(lengte);
    }

    public static double getGewicht(String message){
        String gewicht = JOptionPane.showInputDialog(message);
        return  Double.parseDouble(gewicht);
    }


    public static char getUserAnswer(){
        String answer = JOptionPane.showInputDialog("Wil je opnieuw: j/n?");
        return Character.toUpperCase(answer.charAt(0));

    }
}

我无法从该列表中打印任何内容。每次有人计算他的 BMI 时,它应该把他们放在一个Arraylist当他们点击“继续”时,不......然后它应该返回他们计算的所有 BMI。

标签: javaarraylist

解决方案


您滥用了带有列表结构的循环

for (int i = 0; i < bmilist.size(); i++) {
     JOptionPane.showMessageDialog(null, "List:" + bmilist.get(i).getBmi());
}

推荐阅读