是控制台输入吗。为了方便类都写一个里面了。可以参考下
建立一个结果实体(标题、是否正确结果、选择的答案、正确答案)
建立一个题目list集合,用于存放题目(每个难度对应一个list)
建立一个结果list集合,用于存放作答后的信息
创建对应的题目对象,实体化实体,并且放入对应的list里面
根据选择对应的难度找到对应难度的list集合
然后遍历这个集合,依次显示每个题目的信息,并让用户作答,答完一个显示下一个题目,
获取用户选择的答案,用这个答案跟实体中的正确答案做比较
创建结果实体对象,将比较后的信息set到实体中。(标题、正确结果、选择的答案、正确答案)
将这个结果实体放入到结果list集合中;循环结束后遍历结果list集合显示就可以了。
代码:
import java.util.ArrayListimport java.util.List
import java.util.Scanner
public class SaveLog {
public static void main(String[] args) {
Scanner in = new Scanner(System.in)
// 提示信息
System.out.println("请输入数字选择题目难度,1:简单,2:困难")
// 获取到对应难度的题目
List<Question> questionList = getQuestionByLevel(in.nextInt())
// 创建结果list
List<QuestionResult> questionResults = new ArrayList<QuestionResult>()
// 总答题,正确,错误
int questionCount = questionList.size()
int correntCount = 0
int errorCount = 0
// 遍历题目
for (int i = 0 i < questionList.size() i++) {
// 获取到题目
Question question = questionList.get(i)
System.out.println("题目" + (i + 1) + ":" + question.getTitle())
// 获取到题目选项并打印控制台
List<String> selected = question.getList()
for (String string : selected) {
System.out.println(string)
}
// 获取到选择的答案
String corrent = in.next()
// 获取到做题结果
QuestionResult qr = setQuestionResult(question, corrent)
// 计算错误与正确的题目
if (corrent.equalsIgnoreCase(question.getCorrentResult())) {
correntCount = correntCount + 1
} else {
errorCount = errorCount + 1
}
// 放入结果集合
questionResults.add(qr)
}
System.out.println("您一共答了" + questionCount + "道题,其中正确的为" + correntCount + "题,错误为" + errorCount + "题")
System.out.println()
// 遍历结果
for (QuestionResult questionResult : questionResults) {
if (!questionResult.getSelected().equals(questionResult.getCorrentResult())) {
System.out.println("错误题目:" + questionResult.getTitle())
System.out.println("是否正确:" + questionResult.getResult())
System.out.println("选择的答案:" + questionResult.getSelected() + ",正确答案:" + questionResult.getCorrentResult())
System.out.println()
}
}
}
public static QuestionResult setQuestionResult(Question question, String corrent) {
QuestionResult result = new QuestionResult()
result.setCorrentResult(question.getCorrentResult())
result.setTitle(question.getTitle())
result.setSelected(corrent)
// 如果答案正确
if (corrent.equalsIgnoreCase(question.getCorrentResult())) {
result.setResult("正确")
} else {
result.setResult("错误")
}
return result
}
/** 根据难度获取对应题目(1:简单。2:困难) */
public static List<Question> getQuestionByLevel(int level) {
List<Question> result = null
if (level == 1) {
// 创建list集合用于存放题目,简单难度
List<Question> questionList = new ArrayList<Question>()
// 添加题目到list
Question question = new Question()
question.setTitle("中国文化博大精深,请问1+2等于几?")
// 题目答案选项
List<String> list = new ArrayList<String>()
list.add("A:1")
list.add("B:2")
list.add("C:3")
list.add("D:6")
question.setCorrentResult("C")
question.setList(list)
// 将题目放到list集合
questionList.add(question)
// 设置返回结果
result = questionList
} else if (level == 2) {
// 创建list集合用于存放题目,简单难度
List<Question> questionList = new ArrayList<Question>()
// 添加题目到list
Question question = new Question()
question.setTitle("朝辞白帝彩云间的下一句是什么?")
// 题目答案选项
List<String> list = new ArrayList<String>()
list.add("A:千里江陵一日还")
list.add("B:野火烧不尽")
list.add("C:离离原上草")
list.add("D:智商捉鸡")
question.setCorrentResult("A")
question.setList(list)
// 将题目放到list集合
questionList.add(question)
// 设置返回结果
result = questionList
}
return result
}
}
/** 题目结果类 */
class QuestionResult {
/** 题目名称 */
private String title
/** 是否正确 */
private String result
/** 选择的答案 */
private String selected
/** 正确答案 */
private String correntResult
public String getTitle() {
return title
}
public void setTitle(String title) {
this.title = title
}
public String getResult() {
return result
}
public void setResult(String result) {
this.result = result
}
public String getSelected() {
return selected
}
public void setSelected(String selected) {
this.selected = selected
}
public String getCorrentResult() {
return correntResult
}
public void setCorrentResult(String correntResult) {
this.correntResult = correntResult
}
}
/** 题目类 */
class Question {
/** 题目名称 */
private String title
/** 题目的所有选项 */
private List<String> list
/** 正确答案 */
private String correntResult
public String getTitle() {
return title
}
public void setTitle(String title) {
this.title = title
}
public List<String> getList() {
return list
}
public void setList(List<String> list) {
this.list = list
}
public String getCorrentResult() {
return correntResult
}
public void setCorrentResult(String correntResult) {
this.correntResult = correntResult
}
}
模式为B/SFLASH+XML+AJAX做浏览器的客户端也就是B
C/C++或者JAVA做服务器端,80端口的监听也就是S
由XMLSOCKET函数来发送身高体重三围,服务端计算然后返回给浏览器结果,由浏览器接收结果,即时刷新换图片,采用FLASH或者AJAX技术都可以。
其实那都是虚拟现实技术而已,不是真的3D技术。
java执行应用程序步骤如下:第一步:下载并安装JDK 6.0,安装路径为: C:\java\jdk1.6 .
第二步:对“我的电脑”按右键,选“属性”,在“系统属性”窗口中选“高级”标签,再按“环境变量”按钮,d出一个“环境变量”的窗口,在系统变量中新建一个变量,变量名为“JAVA_HOME“,变量值为"C:\java\jdk1.6";
第三步:单击Windows xp的“开始”->“运行”,在d出的运行窗口中输入cmd,按回车,打开一个命令行窗口,输入javac,将会看见一系列javac常用参数选项.
第四步:开始编程(注意先双击打开"我的电脑",在"工具" ->"文件夹选项" ->点击"查看"选项 ->在"高级设置"中找到"隐藏已知文件类型的扩展名"前面的小勾去掉)。在C盘的根目录中新建一个子目录,名为"JavaTest”,以作为存放 Java源代码的地方。
第五步:在命令行窗口中输入 cd C:\JavaTest,将当前路径转入JavaTest目录中。然后,输入 javac HelloWorld.java,JDK就在JavaTest文件夹中编译生成一个 ass的类文件。
第六步:在命令行窗口中输入 java HelloWorld,(注意没有.class后缀)屏幕出现了
Hello world!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)