当前位置: 首页 > 知识库问答 >
问题:

arraylist在Java,将所有数据打印出来

柯新翰
2023-03-14

我现在正在学习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中,当他们点击“继续”时,不。。。然后它应该会返回他们计算的所有体重指数。

共有2个答案

方恺
2023-03-14

尝试使用int变量的for循环

    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);
            // int variable instead of double inside for loop
            for(int i = 0;i < bmilist.size(); i++){
                JOptionPane.showMessageDialog(null, "List:" + bmilist.get(i));
    
            }
    
   }while(getUserAnswer() == 'J');
澹台俊达
2023-03-14

您误用了列表结构的循环

for (int i = 0; i < bmilist.size(); i++) {
     JOptionPane.showMessageDialog(null, "List:" + bmilist.get(i).getBmi());
}
 类似资料:
  • 我目前面临的一个问题是,我有一个的问题答案,而我正试图将每个答案打印到一个JLabel,因为这将显示添加到题库中的问题。 问题是它只会打印一个答案,并且可能有5个答案存储在数组中。它正在将它打印到控制台我尝试将放在for循环内部和外部。 我这样做是最好的方法吗?

  • 问题内容: 我正在尝试打印a的所有元素,但是它打印的是指针而不是值。 这是我的打印代码… 任何人都可以帮助我,为什么它没有体现出要素的价值。 问题答案: 这是有关打印出列表组件的一些示例: public class ListExample { } class Model { }

  • 问题内容: 我试图简单地在ConcurrentHashMap中打印所有键/值对。 我在网上发现了我认为可以做到的代码,但似乎正在获取有关存储桶/哈希码的信息。老实说,实际上输出的结果很奇怪,可能是我的程序不正确,但是我首先要确保这部分是我要使用的部分。 这给出了大约10个不同键的输出,计数似乎是映射中总插入次数的总和。 问题答案: 我测试了您的代码并正常工作。我添加了一个小演示,它用另一种方式打印

  • 问题内容: 我需要能够在数组列表中打印出Student对象(所有变量)。这可能吗?当我尝试打印时,它会输出此类内容。我认为是这样 这是我的代码: 问题答案: 类中的重写方法如下:

  • 我试图打印出的所有元素,但是它打印的是的指针,而不是值。 这是我的打印代码... 有谁能帮我一下为什么它不打印元素的值。

  • 这给了我很多答案: 我宁愿在数组中显示它。我知道我可以手动将这些数字输入数组。然而,有没有可能在数组中自动显示我对上述公式的答案,这样,如果我改变了我的原始变量,它也可以在数组中显示它们?

  • 我有一个数据类型的ArrayList(它存储一个名为name的字符串和一个名为age的整数)。打印Arraylist的内容时,它会打印正确的年龄,但与我上次添加的元素的名称相同。下面是PrintCollection方法 } 这是数据类

  • 问题内容: 我是一个相对较新的程序员,所以这可能是一个非常简单的问题,但是让我有些困惑。 我正在尝试将Java GUI的最终输出打印到打印机。现在,在我的GUI中,有了它,当您单击打印时,会弹出一个弹出窗口,列出可用的打印机,并根据您选择的打印机,将其打印到该打印机。 但是事实并非如此。我通过搜索互联网来解决此问题,从而获得了大部分代码,并找到了一些很有前途的代码。但是,它是从文件打印出来的。因此