当前位置: 首页 > news >正文

网站建设项目安排计划表怎么设置网址

网站建设项目安排计划表,怎么设置网址,广州出台21条措施扶持餐饮住宿,如何设置网站默认首页机考界面如下#xff08;单选题#xff09;#xff0c;上方是题目状态#xff0c;下方是题目#xff0c;1/5/1是已做题目数量、总共题目数量和答对题目数量。 再看一下多选题的界面。 判断题的界面。 回答正确时的反馈#xff0c;会给出用时。 回答错误时的反馈#xff…机考界面如下单选题上方是题目状态下方是题目1/5/1是已做题目数量、总共题目数量和答对题目数量。 再看一下多选题的界面。 判断题的界面。 回答正确时的反馈会给出用时。 回答错误时的反馈会显示正确答案和用时。 作答结束时会给出总成绩。 Question.java 题库 import java.util.ArrayList; import java.util.List;class SingleChoice {public String question, optionA, optionB, optionC, optionD, correctAnswer;public SingleChoice(String question, String optionA, String optionB, String optionC, String optionD, String correctAnswer) {this.question question;this.optionA optionA;this.optionB optionB;this.optionC optionC;this.optionD optionD;this.correctAnswer correctAnswer;} }class MultipleChoice {public String question, optionA, optionB, optionC, optionD, correctAnswer;public MultipleChoice(String question, String optionA, String optionB, String optionC, String optionD, String correctAnswer) {this.question question;this.optionA optionA;this.optionB optionB;this.optionC optionC;this.optionD optionD;this.correctAnswer correctAnswer;} }class TrueOrFalse {public String question;public boolean correctAnswer;public TrueOrFalse(String question, boolean correctAnswer) {this.question question;this.correctAnswer correctAnswer;} }public class Questions {public ListSingleChoice singleChoices new ArrayList();public ListMultipleChoice multipleChoices new ArrayList();public ListTrueOrFalse trueOrFalse new ArrayList();public Questions() {// 添加单选题singleChoices.add(new SingleChoice(Java中下列哪个关键字用于声明一个类, A. int, B. float, C. class, D. void, C));singleChoices.add(new SingleChoice(什么是面向对象编程的基本特征之一, A. 继承, B. 多态, C. 封装, D. 以上皆是, D));singleChoices.add(new SingleChoice(在Java中如何通过继承实现类之间的关系, A. extends关键字, B. implements关键字, C. super关键字, D. this关键字, A));singleChoices.add(new SingleChoice(以下哪个关键字用于在Java中创建接口, A. interface, B. class, C. abstract, D. extends, A));singleChoices.add(new SingleChoice(在Java中下列哪个关键字用于控制程序的执行流程, A. if, B. else, C. switch, D. for, C));singleChoices.add(new SingleChoice(在Java中下列哪个关键字用于声明一个常量, A. const, B. final, C. static, D. var, B));singleChoices.add(new SingleChoice(以下哪个不是Java的基本数据类型, A. int, B. boolean, C. double, D. string, D));singleChoices.add(new SingleChoice(在Java中哪个关键字用于创建一个新的对象, A. new, B. create, C. make, D. build, A));singleChoices.add(new SingleChoice(以下哪个选项可以用于创建多线程, A. 哈希, B. Thread类, C. Main方法, D. ArrayList类, B));singleChoices.add(new SingleChoice(以下哪个关键字可以用于定义抽象类, A. abstract, B. interface, C. static, D. final, A));// 添加多选题multipleChoices.add(new MultipleChoice(下列哪些选项是Java的基本数据类型, A. boolean, B. string, C. integer, D. double, AD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的流控制语句, A. if-else, B. for, C. while, D. function, ABC));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的包装类, A. Integer, B. Float, C. Long, D. Char, ABC));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的集合类, A. ArrayList, B. LinkedList, C. HashSet, D. Map, ABCD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的线程状态, A. NEW, B. RUNNING, C. WAITING, D. DEAD, ABCD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的线程同步方法, A. wait(), B. notify(), C. synchronized(), D. interrupt(), ABC));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的异常类型, A. Checked Exception, B. Unchecked Exception, C. Error, D. Throwable, ABCD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的注解类型, A. Override, B. Deprecated, C. SuppressWarnings, D. Inject, ABCD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的IO流类型, A. FileInputStream, B. InputStreamReader, C. OutputStream, D. Socket, ABCD));multipleChoices.add(new MultipleChoice(下列哪些选项是Java中的网络通信协议, A. TCP, B. UDP, C. FTP, D. HTTP, ABCD));//添加判断题trueOrFalse.add(new TrueOrFalse(Java是一种面向对象的编程语言, true));trueOrFalse.add(new TrueOrFalse(Java中的final关键字用于标识一个类不可被继承, true));trueOrFalse.add(new TrueOrFalse(Java中的String是基本数据类型, false));trueOrFalse.add(new TrueOrFalse(Java中的数组长度可以动态改变, false));trueOrFalse.add(new TrueOrFalse(Java中的interface可以实现多重继承, true));trueOrFalse.add(new TrueOrFalse(Java中的double类型比float类型精度更高, true));trueOrFalse.add(new TrueOrFalse(Java中的HashMap是线程安全的, false));trueOrFalse.add(new TrueOrFalse(Java中的try块必须和catch或finally块配合使用, true));trueOrFalse.add(new TrueOrFalse(Java中的抽象类可以有构造方法, true));trueOrFalse.add(new TrueOrFalse(Java中的静态方法可以被子类重写, false));} } JavaExam.java 主界面 import javax.swing.*; import javax.swing.border.EmptyBorder; import java.awt.*; import java.util.Collections; import java.util.List;public class JavaExam extends JFrame {private final JLabel labelQuestion;private final JRadioButton radioButtonA, radioButtonB, radioButtonC, radioButtonD;private final JCheckBox checkBoxA, checkBoxB, checkBoxC, checkBoxD;private final ButtonGroup buttonGroup;private final JButton buttonSubmit;private final JLabel labelSingleChoiceNum, labelMultipleChoiceNum, labelTrueOrFalseNum, labelScore, labelTime;private int singleChoiceCount 0, multipleChoiceCount 0, trueOrFalseCount 0;private int singleChoiceCorrectCount 0, multipleChoiceCorrectCount 0, trueOrFalseCorrectCount 0;private int score 0, seconds 0, questionIndex 0;private boolean isSingleChoice, isMultipleChoice, isTrueOrFalse, submit false;private final ListSingleChoice singleChoices;private final ListMultipleChoice multipleChoices;private final ListTrueOrFalse trueOrFalse;private final Timer timer;private final JPanel panelQuestion new JPanel();class GiveQuestion implements Runnable {Overridepublic void run() {Collections.shuffle(singleChoices);Collections.shuffle(multipleChoices);Collections.shuffle(trueOrFalse);while (questionIndex 15) {submit false;if (questionIndex % 3 0) {isSingleChoice true;showSingleChoiceQuestion(singleChoices.get(singleChoiceCount));singleChoiceCount;} else if (questionIndex % 3 1) {isMultipleChoice true;showMultipleChoiceQuestion(multipleChoices.get(multipleChoiceCount));multipleChoiceCount;} else {isTrueOrFalse true;showTrueOrFalseQuestion(trueOrFalse.get(trueOrFalseCount));trueOrFalseCount;}timer.start();while (!submit) {}questionIndex;}endExam();}}public JavaExam() {super(Java机考 By YeMaolin);singleChoices new Questions().singleChoices;multipleChoices new Questions().multipleChoices;trueOrFalse new Questions().trueOrFalse;setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setSize(400, 250);setLocationRelativeTo(null);setLayout(new BorderLayout());panelQuestion.setLayout(new GridLayout(5,1));panelQuestion.setBorder(new EmptyBorder(0,15,0,0)); // 设置组件的外边距labelQuestion new JLabel(, SwingConstants.CENTER);radioButtonA new JRadioButton(A);radioButtonB new JRadioButton(B);radioButtonC new JRadioButton(C);radioButtonD new JRadioButton(D);checkBoxA new JCheckBox(A);checkBoxB new JCheckBox(B);checkBoxC new JCheckBox(C);checkBoxD new JCheckBox(D);buttonGroup new ButtonGroup();buttonGroup.add(radioButtonA);buttonGroup.add(radioButtonB);buttonGroup.add(radioButtonC);buttonGroup.add(radioButtonD);JPanel panelInfo new JPanel();labelSingleChoiceNum new JLabel(单选题0/5/0, SwingConstants.CENTER);labelMultipleChoiceNum new JLabel(多选题0/5/0, SwingConstants.CENTER);labelTrueOrFalseNum new JLabel(判断题0/5/0, SwingConstants.CENTER);labelScore new JLabel(成绩0分, SwingConstants.CENTER);labelTime new JLabel(用时0秒, SwingConstants.CENTER);panelInfo.add(labelSingleChoiceNum);panelInfo.add(labelMultipleChoiceNum);panelInfo.add(labelTrueOrFalseNum);panelInfo.add(labelScore);panelInfo.add(labelTime);add(panelInfo,BorderLayout.NORTH);add(panelQuestion,BorderLayout.WEST);setVisible(true);buttonSubmit new JButton(提交);add(buttonSubmit,BorderLayout.SOUTH);buttonSubmit.addActionListener(e - submitAnswer());timer new Timer(1000, e - {seconds;labelTime.setText(用时 seconds 秒);if (seconds 20) {submitAnswer();}});Thread giveQuestion new Thread(new GiveQuestion());giveQuestion.start();}private void endExam() {timer.stop();JOptionPane.showMessageDialog(this, 考试结束您的成绩是 score 分);System.exit(0);}private void showSingleChoiceQuestion(SingleChoice singleChoice) {panelQuestion.removeAll();labelQuestion.setText(questionIndex 1 /15[单选题] singleChoice.question);radioButtonA.setText(singleChoice.optionA);radioButtonB.setText(singleChoice.optionB);radioButtonC.setText(singleChoice.optionC);radioButtonD.setText(singleChoice.optionD);panelQuestion.add(labelQuestion);panelQuestion.add(radioButtonA);panelQuestion.add(radioButtonB);panelQuestion.add(radioButtonC);panelQuestion.add(radioButtonD);}private void showMultipleChoiceQuestion(MultipleChoice multipleChoice) {panelQuestion.removeAll();labelQuestion.setText(questionIndex 1 /15[多选题] multipleChoice.question);checkBoxA.setText(multipleChoice.optionA);checkBoxB.setText(multipleChoice.optionB);checkBoxC.setText(multipleChoice.optionC);checkBoxD.setText(multipleChoice.optionD);panelQuestion.add(labelQuestion);panelQuestion.add(checkBoxA);panelQuestion.add(checkBoxB);panelQuestion.add(checkBoxC);panelQuestion.add(checkBoxD);}private void showTrueOrFalseQuestion(TrueOrFalse trueOrFalse) {panelQuestion.removeAll();labelQuestion.setText(questionIndex 1 /15[判断题] trueOrFalse.question);radioButtonA.setText(正确);radioButtonB.setText(错误);panelQuestion.add(labelQuestion);panelQuestion.add(radioButtonA);panelQuestion.add(radioButtonB);}private void submitAnswer() {timer.stop();String correctAnswer ;boolean right false;if (isSingleChoice) {String userAnswer ;correctAnswer singleChoices.get(singleChoiceCount - 1).correctAnswer;if (radioButtonA.isSelected()) {userAnswer A;} else if (radioButtonB.isSelected()) {userAnswer B;} else if (radioButtonC.isSelected()) {userAnswer C;} else if(radioButtonD.isSelected()) {userAnswer D;}if (userAnswer.equals(correctAnswer)) {singleChoiceCorrectCount;score;right true;}}else if (isMultipleChoice) {correctAnswer multipleChoices.get(multipleChoiceCount - 1).correctAnswer;String userAnswer ;if (checkBoxA.isSelected()) {userAnswer A;}if (checkBoxB.isSelected()) {userAnswer B;}if (checkBoxC.isSelected()) {userAnswer C;}if (checkBoxD.isSelected()) {userAnswer D;}if (correctAnswer.equalsIgnoreCase(userAnswer)) {multipleChoiceCorrectCount;score 2;right true;}}else if (isTrueOrFalse) {boolean correct trueOrFalse.get(trueOrFalseCount - 1).correctAnswer;correctAnswer String.valueOf(correct);if (radioButtonA.isSelected()correct||radioButtonB.isSelected()!correct) {trueOrFalseCorrectCount;score;right true;}}if (right)JOptionPane.showMessageDialog(this, 回答正确用时 seconds 秒);else JOptionPane.showMessageDialog(this, 回答错误正确答案是 correctAnswer \n用时 seconds 秒);update();submit true;}private void update() {labelScore.setText(成绩 score 分);labelSingleChoiceNum.setText(单选题 singleChoiceCount /5/ singleChoiceCorrectCount);labelMultipleChoiceNum.setText(多选题 multipleChoiceCount /5/ multipleChoiceCorrectCount);labelTrueOrFalseNum.setText(判断题 trueOrFalseCount /5/ trueOrFalseCorrectCount);buttonGroup.clearSelection();checkBoxA.setSelected(false);checkBoxB.setSelected(false);checkBoxC.setSelected(false);checkBoxD.setSelected(false);radioButtonA.setSelected(false);radioButtonB.setSelected(false);radioButtonC.setSelected(false);radioButtonD.setSelected(false);seconds 0;isSingleChoice isMultipleChoice isTrueOrFalse false;}public static void main(String[] args) {SwingUtilities.invokeLater(JavaExam::new);} }首先最主要的功能就是展示题目我们先设计出三种题目类型的结构然后建立起题库。首先是单选题定义一个单选题类题目内容和四个选项以及正确答案都用字符串来表示并为之设置一个带参构造函数。 类似的定义一个多选题类多选题和单选题唯一的区别在于多选题的正确答案不止一个但我们都可以通过一个字符串来表示正确答案因此这两个类实现是一模一样的。 对于判断题来说只需要一个字符串记录题目内容一个布尔变量记录正确的判断结果就行。 然后我们开始准备题库定义一个题库类建立起三种题型的容器。 然后在构造函数中添加题目。 添加10道单选题。 添加10道多选题。 添加10道判断题。 接下来是如何将题目展示在GUI界面上以及实现其他的功能逻辑的问题了。 定义一个类Java Exam继承自JFrame这样Java Exam就是一个窗口了我们在主函数中使用SwingUtilities类中的invokeLater方法来在事件调度线程上执行Java Exam的构造函数。 在Java Exam构造函数中我们定义窗口的一些基本属性并从题库中取出三种类型的题目。 然后初始化选项组件这里单选题和判断题可以共用一套radio Button然后多选题用check Box。 将四个按钮加入到按钮组中确保在同一个按钮组中只有一个单选按钮可以被选中当用户选中其中一个单选按钮时其他的单选按钮会自动变为未选中状态实现单选功能。 实时显示三种题型的已做数目\总数目\答对数目和当前总成绩和用时这些信息都放在一个JPanel容器里面。 设置提交按钮实现一个事件监听器当按钮被点击的时候调用提交答案方法再设置一个定时器如果作答超过20秒将自动提交答案完成作答。 最后创建一个线程giveQuestion用来展示题目。 来看giveQuestion的实现我们先将题目的顺序打乱这样每次重新启动程序题目的出现顺序都是随机的。 然后每种题型取前五道题一共十五道题进行展示分别调用对应的展示函数进行题目展示。 然后开始计时等待作答提交后切换下一题如果没有在20秒内提交答案系统也会自动调用提交函数进行提交然后自动切换下一题。当所有题目作答完毕后调用结束函数展示成绩。 对于三种题型的展示因为涉及到题目之间的切换所以我们使用了一个JPanel容器来装题目的组件然后每次展示题目之前都将这个容器上面的所有组件清除再添加上本题目的组件。 展示单选题这里加上了题号。 类似的展示多选题。 展示判断题用的是和单选题同一套组件但是判断题只需要用到两个radio Button即可表示正确与错误。 然后看提交答案的函数这里首先让计数器停止计时然后分题目类型核对答案。 核对单选题答案先从题库中取出正确答案然后取作答答案进行比较答对加法这里需要注意的是必须对四个选项进行判断有没有选择而不能最后一个用else情况处理因为如果没有作答那么答案就应该为空而不是else的选D。 核对多选题答案这里需要按顺序将选择到的ABCD拼接起来作为一个字符串然后直接和正确答案比较是否相等即可。 核对判断题答案直接判断有没有选对即可。 然后给回作答反馈如果回答正确给出正确提示和用时回答错误的时候给出正确答案和用时再调用更新函数进行状态更新。 再来看更新函数即更新成绩三种题型的已做题目数量和答对题目数量的更新还有选项状态的清除。 最后作答完毕结束时调用的结束函数用来停止计时和展示成绩。
http://www.zqtcl.cn/news/324812/

相关文章:

  • 东莞网站建设方案咨询wordpress易企秀
  • 漳诈网站建设免费的企业网站建设
  • 广州番禺区有什么好玩的地方优化软件有哪些
  • 面包机做面包网站wordpress获取用户注册时间
  • 福州网站建设个人兼职泰州seo排名扣费
  • 泰安北京网站建设公司个人自我介绍网页
  • 网站建设适应全屏如何自动深圳市哪里最繁华
  • 杭州网站推广公司阿里云wordpress 安装目录
  • 厦门优秀网站建设app项目开发流程
  • 工作设计室网站海外网站代理
  • 室内设计官方网站没网站怎么做cpa
  • 哪个网站做欧洲旅游攻略好wordpress编辑器字体大小
  • aspcms 手机网站wordpress 刷浏览量
  • dw网站首页的导航怎么做网站建设企业建站模板
  • 平台型网站建设网站关键词优化seo
  • 齿轮机械东莞网站建设技术支持热搜词排行榜关键词
  • 河南专业做网站网站推广优化c重庆
  • 温州网站建设钱建设工程公司网站
  • 做笑话网站全国大学生职业生涯规划大赛官网
  • 便宜购 网站建设平台推广引流怎么做
  • 怎么用记事本做钓鱼网站制作公司网页的步骤
  • 机械设备东莞网站建设智慧软文网站
  • 个人网站需不需要搭建服务器蘑菇短视频2023版特色功能
  • 网站建设公司是什么东兰县建设局网站
  • 网站优化排名方案软件发布网
  • 企业网站开发价钱低企业策划案例
  • 网站建设帐号网站导入页欣赏
  • ftp 迁移 网站建筑公司商标logo设计
  • 没钱怎么做网站wordpress 链接修改插件
  • 建一个网站需要多久建设银行官网登录入口