我正在制作一个使用JOptionPane
输入和输出名称的程序。
如果输入完名称以自动返回菜单并再次选择一个选项,以便可以在显示名称部分中选择并查看输入的名称,该怎么办?
int choice = Integer.parseInt(JOptionPane.showInputDialog("[1] Insert Name\n[2] Display Name"));
JOptionPane.showMessageDialog(null, "Names: "+values[i]);
public static void main (String args []) {
String [] values = new String [10];
int choice = Integer.parseInt(JOptionPane.showInputDialog("[1] Insert Name\n[2] Display Name"));
if (choice == 1) {
for (int i = 0; i < 1; i ++) {
values[i] = JOptionPane.showInputDialog("Insert Your Name: ");
}
}
if (choice == 2) {
for (int i = 0; i < 1; i++) {
JOptionPane.showMessageDialog(null, "Names: "+values[i]);
}
}
}
首先,如果您不知道要使用多少个名称,请使用列表。然后,在显示时必须循环所有字符串,这样才能显示所有字符串。您的循环只是遍历第一个元素。
此外,添加名称时,必须添加它,并且不能覆盖第一个名称。如果要返回选择,则需要使用循环。
以下代码应该可以,但是我认为您应该在开始编写代码之前就了解基本的控制结构。
public static void main (String[] args) {
LinkedList<String> nameList = new LinkedList<String>();
while (true) { // Repeat forever
int choice = Integer.parseInt(JOptionPane.showInputDialog("[1] Insert Name\n[2] Display Names"));
if (choice == 1)
nameList.add(JOptionPane.showInputDialog("Insert Your Name: "));
if (choice == 2)
for (String name: nameList) // loop over all strings in the list
JOptionPane.showMessageDialog(null, "Name: "+ name);
}
}
但是请注意,您需要输入import java.util.LinkedList;
才能起作用。