在 while 循环中显示数字
Displaying numbers in a while loop
我正在尝试创建一个程序,用户可以在其中输入起始号码和结束号码。该程序打印包括开始和结束在内的所有值,并在消息对话框屏幕上显示所有这些值。但我无法让他们在单个消息对话框中显示所有数字,它会为每个数字创建一个新数字。
public static void main(String[] args) {
int start;
int end;
int result;
start = Integer.parseInt(JOptionPane.showInputDialog("Please enter a starting integer "));
end = Integer.parseInt(JOptionPane.showInputDialog("Please enter an ending integer "));
while (start <= end) {
result = start;
start++;
JOptionPane.showMessageDialog(null,result);
}
}
循环在每次迭代期间调用 showMessageDialog()
。您希望循环将每个数字附加到一个字符串,然后在完成后在对话框中显示整个字符串。
public static void main(String[] args) {
int start;
int end;
int result;
start = Integer.parseInt(JOptionPane.showInputDialog(
"Please enter a starting integer "));
end = Integer.parseInt(JOptionPane.showInputDialog(
"Please enter an ending integer "));
String msg = "";
while (start <= end) {
msg = msg + " " + start;
start++;
}
JOptionPane.showMessageDialog(null, msg);
}
在生产代码中,您将使用 StringBuilder
和 append()
每个数字,而不是在循环的每次迭代期间生成一个新的字符串,因为它更有效。但是,我选择专注于算法,而不是用实现细节分散您的注意力。
这是 StringBuilder
版本:
StringBuilder msg = new StringBuilder();
while (start <= end) {
msg.append(start).append(" ");
start++;
}
JOptionPane.showMessageDialog(null, msg.toString());
我正在尝试创建一个程序,用户可以在其中输入起始号码和结束号码。该程序打印包括开始和结束在内的所有值,并在消息对话框屏幕上显示所有这些值。但我无法让他们在单个消息对话框中显示所有数字,它会为每个数字创建一个新数字。
public static void main(String[] args) {
int start;
int end;
int result;
start = Integer.parseInt(JOptionPane.showInputDialog("Please enter a starting integer "));
end = Integer.parseInt(JOptionPane.showInputDialog("Please enter an ending integer "));
while (start <= end) {
result = start;
start++;
JOptionPane.showMessageDialog(null,result);
}
}
循环在每次迭代期间调用 showMessageDialog()
。您希望循环将每个数字附加到一个字符串,然后在完成后在对话框中显示整个字符串。
public static void main(String[] args) {
int start;
int end;
int result;
start = Integer.parseInt(JOptionPane.showInputDialog(
"Please enter a starting integer "));
end = Integer.parseInt(JOptionPane.showInputDialog(
"Please enter an ending integer "));
String msg = "";
while (start <= end) {
msg = msg + " " + start;
start++;
}
JOptionPane.showMessageDialog(null, msg);
}
在生产代码中,您将使用 StringBuilder
和 append()
每个数字,而不是在循环的每次迭代期间生成一个新的字符串,因为它更有效。但是,我选择专注于算法,而不是用实现细节分散您的注意力。
这是 StringBuilder
版本:
StringBuilder msg = new StringBuilder();
while (start <= end) {
msg.append(start).append(" ");
start++;
}
JOptionPane.showMessageDialog(null, msg.toString());