Java swing - list.add 问题

标签 java swing arraylist

我正在创建一个用于体育赛事评判的 GUI。有 6 位评委,他们各自将自己的分数输入 GUI 中。然后他们点击计算,程序的目的是将数字从低到高排序,然后从位置 1 到 4 取数字并给出平均值。

我已经编写了通过控制台输入的代码并且可以工作,但是当我尝试我的 Gui 时,“list.add”不起作用。我不知道我是否应该使用其他东西。

    btnCalculate = new JButton("Calculate");
    btnCalculate.addActionListener(new ActionListener() {
        public void actionPerformed(ActionEvent e) {
            inGui = new Scanner (System.in);
            double firstRun = getAverageOfRun(1);
            double secondRun = getAverageOfRun(2);
            double best;

            if (firstRun > secondRun) {
                best = firstRun;
            } else {
                best = secondRun;
            }
            textFieldRun1Score.setText(Double.toString(best));
            }
        private double getAverageOfRun (int runNumber) {
            double total, avg;
            int num1, num2, num3, num4, num5, num6;
            List<Integer> list = new ArrayList<Integer>();

            num1 = Integer.parseInt(textFieldRun1Score1.getText());

            System.out.print(""+runNumber +": ");
            list.add(textFieldRun1Score1.getText());
            list.add(textFieldRun1Score2.getText());
            list.add(textFieldRun1Score3.getText());
            list.add(textFieldRun1Score4.getText());
            list.add(textFieldRun1Score5.getText());
            list.add(textFieldRun1Score6.getText());

            Collections.sort(list);

            total = list.get(1) + list.get(2) + list.get(3) + list.get(4);

            avg = total / 4;

            textFieldBestScore.setText(Double.toString(avg));
            return avg;

        }

最佳答案

此代码无法编译的原因很简单:类型不匹配。 只需分割这一行:

list.add(textFieldRun1Score1.getText());

up: list.add(...) 需要一个 int 作为参数(因为它的模板类型是 Integer), textFieldRun1Score1.getText() 返回一个String。因此,您必须首先从 String 转换为 int。解决此问题的最常见方法是 int value = Integer.parseInt(string);

关于Java swing - list.add 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33164507/

相关文章:

java - Android:获取原子时间

java - 将所有输入转换为大写

java - 在我的代码中使 arraylist 可打包?

java - ArrayList removeAll() 不删除对象

java - JInternalFrame 的单个实例

java - 如何在 Jersey + Java 中从特定索引返回数组列表

java - 如何使用 Spring Rest 服务/Spring Boot 下载 Excel

java - 通过连接池建立 MySQL JDBC 连接失败 : SQL Exception: No suitable driver found

java - 当我单击文本字段并弹出时,是否有 Java Swing 的日期选择器?

swing - 如何将 javax.mail.Session setDebug 重定向到 jTextArea