问题的摘要如下:
编写一个应用程序,显示一系列4个调查问题,调查可以是你想要的社会或政治主题,每个问题应该有3个可能的选择。最后,使用对话框询问用户是否要输入(1)对同一组问题输入另一组回答,或(2)退出。继续接受一组回答,直到用户选择退出,然后显示调查结果-对于每个问题,显示有多少用户选择了第一个、第二个或第三个选项的结果
我理解这个问题,但在最后一部分中有问题,您必须显示响应,因此我想问,当使用joptionpane的方法showinputdialog从用户获取输入时,如何获取用户或多个用户的输入并在输出中显示它们。
import javax.swing.JOptionPane;
public class Survey {
public static void main(String[] args) {
String q1, q2, q3, q4;
int surveyQuestion1,surveyQuestion2,surveyQuestion3,surveyQuestion4 , selection;
do {
q1 = JOptionPane.showInputDialog(null, "How you feel" + "\n1. Good" + "\n2. Alright" + "\n3. Bad");
surveyQuestion1 = Integer.parseInt(q1);
q2 = JOptionPane.showInputDialog(null, "How is family" + "\n1. Good" + "\n2. Alright" + "\n3. Bad");
surveyQuestion2 = Integer.parseInt(q2);
q3 = JOptionPane.showInputDialog(null, "How is home" + "\n1. Good" + "\n2. Alright" + "\n3. Bad");
surveyQuestion3 = Integer.parseInt(q3);
q4 = JOptionPane.showInputDialog(null, "How is your life" + "\n1. Good" + "\n2. Alright" + "\n3. Bad");
surveyQuestion4 = Integer.parseInt(q4);
selection = JOptionPane.showConfirmDialog(null, "Do you want to set another response ?");
} while (selection == JOptionPane.YES_OPTION);
if(selection == JOptionPane.NO_OPTION){
JOptionPane.showMessageDialog(null,"The people choose " + surveyQuestion1 + " the most from the first question ");
JOptionPane.showMessageDialog(null,"The people choose " + surveyQuestion2 + " the most from the second question ");
JOptionPane.showMessageDialog(null,"The people choose " + surveyQuestion3 + " the most from the third question ");
JOptionPane.showMessageDialog(null,"The people choose " + surveyQuestion4 + " the most from the fourth question ");
}
}
}
谢谢:)
2条答案
按热度按时间bvk5enib1#
我正在尽我所能利用您提供的信息,但是您应该能够将输入记录在堆栈中,然后从堆栈中取出信息,然后将其放入对话框中。
注意:如果您不知道,stack.pop()将返回它删除的值。
mqxuamgl2#
我会给你提示,而不是代码,因为这是给你的练习。
编写一个应用程序,显示一系列4个调查问题,调查可以是你想要的社会或政治主题,每个问题应该有3个可能的选择。最后,使用对话框询问用户是否要输入(1)对同一组问题输入另一组回答,或(2)退出。
到目前为止,你的代码还可以。
继续接受响应集,直到用户选择退出,
这意味着您需要具有能够在每次迭代中存储4个答案的存储
它不能有静态存储,因为用户选择继续的次数可能会有所不同。
提示:思考
UDT
阶级
and something to store as many objects of that maybe fromjava.util
然后显示调查结果-对于每个问题,显示有多少用户选择了第一个、第二个或第三个选项的结果
这就是问题变得复杂的地方。到目前为止,它还没有提到多个用户。这有两个含义,任何一个都可以:
更简单:修改上面的内容
UDT
阶级
storageto have multiple answers for single user which is stored in expandable data structure possibly fromjava.util
更改main中的循环,以便您可以选择更改不同的用户名,另一个外部用户名
while\for
更困难的是:实现一种方法,使用来自java.io
比如说一些存储设备json
或xml
在应用程序开始读取现有数据时,获取新数据并取平均值。输出JOptionPane
应类似于:q1:用户数量q2:用户数量q3:用户数量q4:用户数量
应该很有趣。对于多个用户,使用选项#1,可能需要在几个小时内完成。对于#2,你至少要谈几天。