【发布时间】:2016-05-08 14:14:37
【问题描述】:
我正在尝试在 gui 中显示一个数组列表。但是我遇到了一些麻烦。我需要检查我的游戏是否合法,如果不合法,它会调用显示数组列表的 getProblems。我尝试直接在 GUI 类中调用 getProblems,但它会将数组显示为空。 (因为它不检查它是否合法)。我还尝试调用 isLegal 然后调用 getProblems,但您不能在 JOptionPane 中执行此操作。关于如何称呼它的任何提示?
GetProblems 类
protected List < String > getProblems() {
return displayOutput;
}
IsLegal 类
public boolean isLegal() {
boolean legality;
if (checkRowConstraints().isEmpty()) {
legality = true;
} else {
getProblems();
legality = false;
}
return legalCheck;
}
图形界面:
public void actionPerformed(ActionEvent e) {
if (!(puzzle.isLegal())) {
JOptionPane.showMessageDialog(FutoshikiFrame.this,
puzzle.getProblems(),
"You made a mistake!",
JOptionPane.INFORMATION_MESSAGE);
这是 GUI 结果的实际显示与我试图获得的结果之间的差异。
发现更多问题: 我需要返回数组列表然后清空它。固定
【问题讨论】:
-
我很惊讶甚至编译,因为当您在
getProblems()中将返回类型指定为List<String>时,您正试图返回String。 -
@TEK 调整后,当我将代码粘贴到 stackoverflow 中时,我忘记删除第一行(正在格式化数组,因此它只打印方括号内的字符,例如:“Hi”而不是“[嗨]”)
标签: java swing arraylist actionevent