我正在创建一个用于评判体育赛事的GUI。有6名评委,他们各自将他们的分数输入GUI。然后他们点击计算,程序意味着将数字从低到高排序,然后从位置1到4取数字并给出平均值。
我已经通过控制台编写了输入代码并且可以正常工作,但是当我尝试我的Gui时,他就会使用#list; add.add'不起作用。我不知道我是不打算用别的东西。
{{1}}
答案 0 :(得分:1)
此代码无法编译的原因很简单:类型不匹配。 只需分开这一行:
list.add(textFieldRun1Score1.getText());
up:list.add(...)
期望int
作为参数(因为它的模板类型为Integer
),textFieldRun1Score1.getText()
会返回String
。因此,您必须先从String
转换为int
。最常见的解决方法是int value = Integer.parseInt(string);
答案 1 :(得分:1)
list.add(textFieldRun1Score1.getText());
因为您尝试将String
添加到Integers
首先将String
解析为Integer
:
list.add(Integer.parseInt(textFieldRun1Score1.getText()));
。
修改(不是您问题的答案,而是一般建议):
而不是:
double best;
if (firstRun > secondRun) {
best = firstRun;
} else {
best = secondRun;
}
只需使用:double best = Math.max(firstRun, secondRun);