我正在尝试创建一个列出两个变量之间所有整数的java程序。一个是最低(包括),另一个是最大(也包括在内)。 到目前为止,这是我的计划:
int highNum, lowNum;
//converts and sets user inputs of low and high values to double
lowNum = Integer.parseInt(minInput.getText());
highNum = Integer.parseInt(maxInput.getText());
String output = null;
for (int i = lowNum + 1; i < highNum; i++)
output = Integer.toString(i);
//outputs sting containing the list of numbers
outputLabel.setText(output);
在我从System.out转换它之前它有效但当我尝试将其转换为具有netbeans的UI时,我再也无法让它列出数字。 在我开始工作之前:
int min, max;
min = 1;
max = 10;
for (int i = min + 1; i < max; i++)
System.out.println(i);
答案 0 :(得分:1)
在Java 8中,您可以使用IntStream
int lowNum = Integer.parseInt(minInput.getText());
int highNum = Integer.parseInt(maxInput.getText());
StringBuilder sb = new StringBuilder();
IntStream.rangeClosed(lowNum, highNum).forEach(no -> {
sb.append(no);
});
outputLabel.setText(sb.toString());
答案 1 :(得分:0)
将每个值连接到String
,就像只得到最后一个值一样。
int lowNum = Integer.parseInt(minInput.getText());
int highNum = Integer.parseInt(maxInput.getText());
StringBuilder sb = new StringBuilder(String.valueOf(lowNum));
for (int i = lowNum + 1; i <= highNum; i++) {
sb.append(", ").append(i);
}
outputLabel.setText(sb.toString());