我对列表中的显示元素有疑问。
按钮操作:
btn.setOnAction(new EventHandler<ActionEvent>() {
@Override
public void handle(ActionEvent event) {
int lewy = Integer.parseInt(kresLewy.getText());
int prawy = Integer.parseInt(kresPrawy.getText());
licz(field.getText(),prawy,lewy);
}
});
这是我的清单:
static public double licz(String wiersz, int lewy, int prawy) {
double wynik = 0.0;
///////Lista podawana z klawiatury z krokiem co 1
List<Double> listaX = new ArrayList();
for (int i = lewy; i <= prawy; i++) {
listaX.add((double) i);
}
System.out.println(listaX);
try {
StringReader tekstReader = new StringReader(wiersz);
wykresy.parser parser_obj
= new wykresy.parser(new wykresy.MyLexer(tekstReader));
TElement result = (TElement) parser_obj.parse().value;
wynik = result.oblicz();
System.out.println("WYNIK:" + wiersz + " = " + wynik);
} catch (Exception e) {
System.out.println("Podczs obliczenia wystapil blad. (" + e.getMessage() + ")");
} catch (Error error) {
System.out.println("Podczs obliczenia wystapil blad. (" + error.getMessage() + ")");
}
//}
return wynik;
}
我认为问题出在&#34; lewy&#34;和&#34; prawy&#34;,因为列表是空的。我该如何解决?
答案 0 :(得分:3)
只需遍历列表并打印值。
使用foreach循环:
for(Double d: listaX){
System.out.println(d);
}
使用功能操作:
listaX.forEach((d) -> {
System.out.println(d);
});
答案 1 :(得分:1)
如果您想要打印出可以使用System.out.println(listaX)
的内容,可以将对象打印到控制台。
public static void main(String[] args) {
int lewy = 0;
int prawy = 10;
List<Double> listaX = new ArrayList();
for (int i = lewy; i <= prawy; i++) {
listaX.add((double) i);
}
System.out.println(listaX);
}
答案 2 :(得分:1)
根据你的编辑,唯一的问题是:lewy,prawy被切换,所以你的循环从10变为0 - &gt;这导致一个空列表。
你有几个问题:
wynik未使用
public static void main(String[] args) {
int lewy = 0;
int prawy = 10;
licz("Text",lewy, prawy);
}
static public void licz(String wiersz, int lewy, int prawy) {
double wynik = 0.0;
List<Double> listaX = new ArrayList();
for (int i = lewy; i <= prawy; i++) {
listaX.add((double) i);
}
System.out.println(listaX);
}