所以我有这个代码 - 你按下按钮,然后为玩家起草一张卡片。目前我只在屏幕上添加了一个播放器名称,random_nr将在以后获取卡号,此时它不需要。
问题是我有一个列表,nimedlist,由玩家名称组成。我想在仍然存在卡的情况下多次浏览列表,但最终声明毁了它但我不能在按钮中执行int i = 0,因为每次按下按钮,它将获得值0试。
还有其他方法可以让“i”值变化吗?循环不是一种选择。
final int i = 0;
//mis juhtub kui nextButtonile vajutada
nextButton.setOnAction(new EventHandler<ActionEvent>() {
public void handle(final ActionEvent event) {
final int random_nr = (int) (Math.random() * (kaardid.size()));
final Label nimi = new Label();
nimi.setText((String) nimedlist.get(i));
System.out.println(nimedlist.get(i));
nimi.setFont(Font.font("Verdana", 30));
nimi.setTextFill(Color.ORANGE);
alustaPiir.getChildren().add(nimi);
i++;
if (i == nimedlist.size()-1){
i = 0;
}
}
});
答案 0 :(得分:0)
在类范围内将变量定义为字段(实例变量)并提供有意义的名称:
private int currentIndex = 0;
并在代码中将所有i
替换为此内容。