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

Java——一个Java实体类,表示一个试题的模型

这段代码是一个Java实体类,表示一个试题的模型。
该实体类具有以下属性:

  • id:题号,表示试题的编号。
  • title:题目,表示试题的题目内容。
  • optionA:选项A,表示试题的选项A。
  • optionB:选项B,表示试题的选项B。
  • optionC:选项C,表示试题的选项C。
  • optionD:选项D,表示试题的选项D。
  • answer:答案,表示试题的正确答案。
  • value:分值,表示该试题的分值。

该实体类提供了对应属性的获取(get)和设置(set)方法,用于对试题的属性进行操作。

这个实体类用于表示试题的数据模型,可以在试题系统中使用,用来存储和获取试题的相关数据。

 

package demo1130;
import java.util.ArrayList;
import java.util.Scanner;//(业务)功能类
public class QuestionTest {public static void main(String[] args) {new QuestionTest().start();}Scanner sc = new Scanner(System.in);public void start() {while (true) {System.out.println("------------------------");System.out.println("----请选择功能-----------");System.out.println("----1-试题录入-----------");System.out.println("----2-试题查询(按照题号查看)-----------");System.out.println("----3-试题删除(按照题号删除)-----------");System.out.println("----4-试题修改(按照题号修改)-----------");System.out.println("----5-查看试题(查看全部试题)-----------");System.out.println("----6-排序试题(根据题号排序)-----------");System.out.println("----7-回答试题(正确数/得分)-----------");System.out.println("----请输入功能序号:-----------");switch (Integer.parseInt(sc.nextLine())) {case 1:inputs();break;case 2:getModelById();break;case 3:delModelById();break;case 4:updModelById();break;case 5:print();break;case 6:sortById();break;case 7:test();break;}System.out.println("****是否退出系统? y/n ****");if ("y".equalsIgnoreCase(sc.nextLine()))break;}}public void test() {//回答试题int sum = 0;// 总分int count = 0;// 正确数for (QuestionModel model : list) {System.out.println("题号:" + model.getId());System.out.println("题目:" + model.getTitle());System.out.println("选项A:" + model.getOptionA());System.out.println("选项B:" + model.getOptionB());System.out.println("选项C:" + model.getOptionC());System.out.println("选项D:" + model.getOptionD());
//			System.out.println("答案:"+model.getAnswer());System.out.println("分值:" + model.getValue());System.out.println("请输入答案:");String line = sc.nextLine();if (model.getAnswer().equalsIgnoreCase(line)) {sum += model.getValue();count++;}}System.out.println("正确数" + count + "\t得分:" + sum);}public void sortById() {//排序int len = list.size();for (int i = 0; i < len - 1; i++) {for (int j = 0; j < len - i - 1; j++) {QuestionModel m1 = list.get(j);QuestionModel m2 = list.get(j + 1);if (m1.getId() > m2.getId()) {list.set(j, m2);list.set(j + 1, m1);}}}}public void updModelById() {//修改System.out.println("请输入即将修改的题号:");int id = Integer.parseInt(sc.nextLine());for (QuestionModel model : list) {if (model.getId() == id) {System.out.println("该题目信息如下:");System.out.println("题号:" + model.getId());System.out.println("题目:" + model.getTitle());System.out.println("选项A:" + model.getOptionA());System.out.println("选项B:" + model.getOptionB());System.out.println("选项C:" + model.getOptionC());System.out.println("选项D:" + model.getOptionD());System.out.println("答案:" + model.getAnswer());System.out.println("分值:" + model.getValue());System.out.println("请进行修改操作:");System.out.println("请输入题目:");model.setTitle(sc.nextLine());System.out.println("请输入选项A:");model.setOptionA(sc.nextLine());System.out.println("请输入选项B:");model.setOptionB(sc.nextLine());System.out.println("请输入选项C:");model.setOptionC(sc.nextLine());System.out.println("请输入选项D:");model.setOptionD(sc.nextLine());System.out.println("请输入答案:");model.setAnswer(sc.nextLine());System.out.println("请输入分值:");model.setValue(Integer.parseInt(sc.nextLine()));}}}public void delModelById() {//删除System.out.println("请输入即将删除的题号:");int id = Integer.parseInt(sc.nextLine());for (int i = list.size() - 1; i >= 0; i--) {QuestionModel model = list.get(i);if (model.getId() == id) {list.remove(i);System.out.println("该题号(" + ")已删除");return;}}System.out.println("该题号对应题目不存在");}public void getModelById() {//查询System.out.println("请输入即将查询的题号:");int id = Integer.parseInt(sc.nextLine());for (QuestionModel model : list) {if (model.getId() == id) {System.out.println("题号:" + model.getId());System.out.println("题目:" + model.getTitle());System.out.println("选项A:" + model.getOptionA());System.out.println("选项B:" + model.getOptionB());System.out.println("选项C:" + model.getOptionC());System.out.println("选项D:" + model.getOptionD());System.out.println("答案:" + model.getAnswer());System.out.println("分值:" + model.getValue());return;}}System.out.println("该题号对应题目不存在");}public void inputs() {//录入while (true) {input();System.out.println("是否继续录入? y/n");if ("n".equalsIgnoreCase(sc.nextLine()))break;}}public boolean isExist(int id) {// 判断题号是否存在for (QuestionModel model : list) {if (model.getId() == id) {System.out.println("该题号(" + ")已经存在");return true;}}return false;}ArrayList<QuestionModel> list = new ArrayList<>();public void input() {QuestionModel model = new QuestionModel();int id = 0;do {System.out.println("请输入题号:");id = Integer.parseInt(sc.nextLine());} while (isExist(id));model.setId(id);System.out.println("请输入题目:");model.setTitle(sc.nextLine());System.out.println("请输入选项A:");model.setOptionA(sc.nextLine());System.out.println("请输入选项B:");model.setOptionB(sc.nextLine());System.out.println("请输入选项C:");model.setOptionC(sc.nextLine());System.out.println("请输入选项D:");model.setOptionD(sc.nextLine());System.out.println("请输入答案:");model.setAnswer(sc.nextLine());System.out.println("请输入分值:");model.setValue(Integer.parseInt(sc.nextLine()));list.add(model);}public void print() {//查看for (QuestionModel model : list) {System.out.println("题号:" + model.getId());System.out.println("题目:" + model.getTitle());System.out.println("选项A:" + model.getOptionA());System.out.println("选项B:" + model.getOptionB());System.out.println("选项C:" + model.getOptionC());System.out.println("选项D:" + model.getOptionD());System.out.println("答案:" + model.getAnswer());System.out.println("分值:" + model.getValue());}}}
package demo1130;//实体类
//试题
public class QuestionModel {private int id;// 题号private String title;// 题目private String optionA;// 选项Aprivate String optionB;// 选项Bprivate String optionC;// 选项Cprivate String optionD;// 选项Dprivate String answer;// 答案private int value;// 分值public int getId() {return id;}public void setId(int id) {this.id = id;}public String getTitle() {return title;}public void setTitle(String title) {this.title = title;}public String getOptionA() {return optionA;}public void setOptionA(String optionA) {this.optionA = optionA;}public String getOptionB() {return optionB;}public void setOptionB(String optionB) {this.optionB = optionB;}public String getOptionC() {return optionC;}public void setOptionC(String optionC) {this.optionC = optionC;}public String getOptionD() {return optionD;}public void setOptionD(String optionD) {this.optionD = optionD;}public String getAnswer() {return answer;}public void setAnswer(String answer) {this.answer = answer;}public int getValue() {return value;}public void setValue(int value) {this.value = value;}
}

 

这段代码可以分为以下几个部分:

  1. 包名和导入语句:

    package demo1130;// 导入所需的类
    
  2. QuestionModel类的定义:

    public class QuestionModel {// 类的成员变量private int id;private String title;private String optionA;private String optionB;private String optionC;private String optionD;private String answer;private int value;// 类的方法// 省略 getter 和 setter 方法
    }
    
  3. QuestionModel类的成员变量和 getter/setter 方法的定义:

    public int getId() {return id;
    }public void setId(int id) {this.id = id;
    }public String getTitle() {return title;
    }public void setTitle(String title) {this.title = title;
    }public String getOptionA() {return optionA;
    }public void setOptionA(String optionA) {this.optionA = optionA;
    }public String getOptionB() {return optionB;
    }public void setOptionB(String optionB) {this.optionB = optionB;
    }public String getOptionC() {return optionC;
    }public void setOptionC(String optionC) {this.optionC = optionC;
    }public String getOptionD() {return optionD;
    }public void setOptionD(String optionD) {this.optionD = optionD;
    }public String getAnswer() {return answer;
    }public void setAnswer(String answer) {this.answer = answer;
    }public int getValue() {return value;
    }public void setValue(int value) {this.value = value;
    }
    

以上是整段代码的分块解析。这段代码定义了一个名为 QuestionModel 的实体类,用于表示试题的模型。该实体类具有题号、题目、选项和答案等属性,并提供了对应的获取和设置方法。这个实体类可以作为试题系统中试题数据的载体,在处理试题相关的逻辑时使用。

相关文章:

Java——一个Java实体类,表示一个试题的模型

这段代码是一个Java实体类&#xff0c;表示一个试题的模型。 该实体类具有以下属性&#xff1a; id&#xff1a;题号&#xff0c;表示试题的编号。title&#xff1a;题目&#xff0c;表示试题的题目内容。optionA&#xff1a;选项A&#xff0c;表示试题的选项A。optionB&#…...

PHP8函数的引用和取消-PHP8知识详解

今天分享的是php8函数的引用和取消&#xff0c;不过在PHP官方的参考手册中&#xff0c;已经删除了此类教程。 1、函数的引用 在PHP8中不管是自定义函数还是内置函数&#xff0c;都可以直接简单的通过函数名调佣。函数的引用大致有下面3种&#xff1a; 1.1、如果是PHP的内置函…...

华为OD机试真题【最大利润】

1、题目描述 【最大利润】 商人经营一家店铺&#xff0c;有number种商品&#xff0c;由于仓库限制每件商品的最大持有数量是item[index] 每种商品的价格是item-price[item_index][day] 通过对商品的买进和卖出获取利润 请给出商人在days天内能获取的最大的利润 注&#xff1a;…...

YOLOv5+deepsort实现目标追踪。(附有各种错误解决办法)

一、YOLOv5算法相关配置 🐸这里如果是自己只想跑一跑YOLOV5的话,可以参考本章节。只想跑通YOLOv5+deepsort的看官移步到下一章节。 1.1 yolov5下载 🐸yolov5源码在github下载地址上或者Gitee上面都有。需要注意的是由于yolov5的代码库作者一直在维护,所以下载的时候需…...

java.8 - java -overrideoverload 重写和重载

重写(Override) 重写是子类对父类的允许访问的方法的实现过程进行重新编写, 返回值和形参都不能改变。即外壳不变&#xff0c;核心重写&#xff01; 重写的好处在于子类可以根据需要&#xff0c;定义特定于自己的行为。 也就是说子类能够根据需要实现父类的方法。 重写方法不…...

oracle通配符大全

用于where比较条件的有 &#xff1a; 等于&#xff1a;、<、<、>、>、<> >,<:大于&#xff0c;小于 >.<:大于等于&#xff0c;小于等于 :等于 !,<>,^:不等于 包含&#xff1a;in、not in exists、not exists 范围&#xff1a;betwe…...

浏览器开发者工具平台js代码开启展开收起

1、如下js左侧可以展开和收起段落&#xff0c;需要打开右上角的设置 2、Preferences这里勾选Code folding 即可像上面那张图展开和收起js段落代码 3、然后重新打开开发者工具&#xff0c;随意打开一个js文件&#xff0c;这里就有缩放了...

opencv 案例实战01-停车场车牌识别实战

需求分析&#xff1a; 车牌识别技术主要应用领域有停车场收费管理&#xff0c;交通流量控制指标测量&#xff0c;车辆定位&#xff0c;汽车防盗&#xff0c;高速公路超速自动化监管、闯红灯电子警察、公路收费站等等功能。对于维护交通安全和城市治安&#xff0c;防止交通堵塞…...

【PHP】PHP开发教程-PHP开发环境安装

1、PHP简单介绍 PHP&#xff08;全称&#xff1a;Hypertext Preprocessor&#xff09;是一种广泛使用的开放源代码脚本语言&#xff0c;特别适用于Web开发。它嵌入在HTML中&#xff0c;通过在HTML文档中添加PHP标记和脚本&#xff0c;可以生成动态的、个性化的Web页面。 PHP最…...

AURIX TriCore内核架构学习笔记

名词缩写 ISA - Instruction Set Architecture&#xff0c;指令集架构PC - Program Counter, holds the address of the instruction that is currently runningGPRs - 32 General Purpose RegistersPSW - Program Status WordPCXI - Previous Context InformationCSA - Conte…...

VMware ESXi 7.0 优化VMFSL磁盘占用与系统存储大小

文章目录 VMware ESXi 7.0 优化VMFSL磁盘占用与系统存储大小引言创建ESXi7.0可启动 U 盘结果检查VMware ESXi 7.0 优化VMFSL磁盘占用与系统存储大小 引言 本文讲述了在 J1900平台上安装ESXi7.0时减少 VMFSL 分区占用的说明, 通常这来说些主机内置的磁盘空间非常小, 采用默认安…...

4.网络设计与redis、memcached、nginx组件(二)

系列文章目录 第四章 网络设计与redis、memcached、nginx组件(一) 第五章 网络设计与redis、memcached、nginx组件(二) 文章目录 系列文章目录[TOC](文章目录) 前言一、reactor模型&#xff1f;二、Reactor 开发1.建立连接 三、典型reactor 模型单reactor 模型典型 readisradi…...

后端开发有哪几种语言? - 易智编译EaseEditing

后端开发是构建应用程序的一部分&#xff0c;负责处理服务器端的逻辑、数据库交互和数据处理。有许多编程语言可用于后端开发&#xff0c;以下是一些常见的后端开发语言&#xff1a; Java&#xff1a; Java是一种广泛使用的面向对象编程语言&#xff0c;具有强大的跨平台能力。…...

Spring 学习源码的基础 核心原理与核心概念

文章目录 核心原理AnnotationConfigApplicationContextIoC 容器加载流程Spring 中如何创建一个对象Bean 的创建过程 (生命周期)单例 原型推断构造方法依赖注入AOP 动态代理判断是否需要 AOP 的大致流程CGLib 做 AOP 的大致流程事务事务代理对象执行方法的流程事务注解排至失效的…...

cpolar做一个内网穿透

因为不在公司&#xff0c;需要访问公司的数据库&#xff0c;所以做一个内网穿透 下载安装 下载地址&#xff1a; https://dashboard.cpolar.com/get-started 下载后是个压缩包&#xff0c;解压后傻瓜式安装 操作隧道 安装后打开Cpolar Web UI 登录账号&#xff0c;查看隧…...

自动驾驶——最优控制算法(LQR)工程化总结

1. Summary 时隔一年&#xff0c;从写下第一篇博文自动驾驶-LQR工程实现&#xff08;调研&#xff09;&#xff0c;到近段时间&#xff0c;真正在我们的控制器上运行最优控制算法&#xff08;LQR&#xff09;&#xff0c;一步一个脚印&#xff0c;从开始只是知道其“控制理论”…...

【微服务】05-网关与BFF(Backend For Frontend)

文章目录 1.打造网关1.1 简介1.2 连接模式1.3 打造网关 2.身份认证与授权2.1 身份认证方案2.1.1 JWT是什么2.1.2 启用JwtBearer身份认证2.1.3 配置身份认证2.1.4 JWT注意事项 1.打造网关 1.1 简介 BFF(Backend For Frontend)负责认证授权&#xff0c;服务聚合&#xff0c;目标…...

保证MQ的高可用的几种方案

推荐阅读 AI文本 OCR识别最佳实践 AI Gamma一键生成PPT工具直达链接 玩转cloud Studio 在线编码神器 玩转 GPU AI绘画、AI讲话、翻译,GPU点亮AI想象空间 资源分享 史上最全文档AI绘画stablediffusion资料分享 AI绘画关于SD,MJ,GPT,SDXL百科全书 「java、python面试题」…...

MySql013——函数

一、数据处理函数 1.1、文本处理函数 函 数 说 明 Left() 返回串左边的字符Length() 返回串的长度Locate() 找出串的一个子串Lower() 将串转换为小写LTrim() 去掉串左边的空格Right() 返回串右边的字符RTrim() 去掉串右边的空格Soundex() 返回串…...

k8s-dashboard使用指导手册

一、访问 dashboard http://172.66.209.101:32001 二、选择 Namespace 如下图&#xff1a; 1 在①搜索框中输入 spms 2 在②选择 spms-cloud 三、查找 pod 1 打开 pod 列表 2 打开过滤窗口 3 搜索 pod 在打开的搜索框中输入 pod的关键字&#xff0c;支持模糊搜索 如搜索…...

GraphRAG:当 RAG 遇上知识图谱,信息检索从此不一样了

假设你把公司过去三年的所有周报、会议纪要、项目文档丢进一个 RAG 系统&#xff0c;然后问它&#xff1a;“过去一年里&#xff0c;研发团队和产品团队之间的主要分歧有哪些&#xff1f;”——大概率你会得到几段看起来相关的文字片段&#xff0c;但拼不出一个完整的答案。 这…...

Realistic Vision V5.1虚拟摄影棚效果验证:专业摄影师盲测准确率87.3%

Realistic Vision V5.1虚拟摄影棚效果验证&#xff1a;专业摄影师盲测准确率87.3% 1. 项目概述 Realistic Vision V5.1虚拟摄影棚是基于当前最先进的写实风格生成模型开发的本地化摄影工具。经过深度优化后&#xff0c;该工具能够生成与专业单反相机拍摄效果相媲美的人像作品…...

OFA视觉蕴含模型部署教程:日志分级输出与推理过程可追溯性设计

OFA视觉蕴含模型部署教程&#xff1a;日志分级输出与推理过程可追溯性设计 1. 镜像简介与核心价值 今天咱们来聊聊一个特别实用的AI模型——OFA视觉蕴含模型。简单来说&#xff0c;它能看懂图片&#xff0c;然后判断你描述的两句话&#xff0c;跟这张图片是什么关系。 想象一…...

Python 3.15 JIT为何在Docker中静默禁用?揭开musl libc与libffi-3.4.6 ABI不兼容的致命链

第一章&#xff1a;Python 3.15 JIT 的设计目标与 Docker 场景适配性Python 3.15 引入的实验性 JIT&#xff08;Just-In-Time&#xff09;编译器并非追求通用性能提升&#xff0c;而是聚焦于特定高价值场景——尤其是容器化微服务中反复执行的 CPU 密集型工作负载。其核心设计目…...

Mac能够连接校园网,但是无法上网

Mac电脑能够正常连接校园网&#xff0c;但是无法上网解决步骤&#xff1a;打开系统设置&#xff0c;网络&#xff0c;WI-FI&#xff0c;DNS把现有的删掉重置它。原因分析&#xff1a;应该是在使用代理时、访问什么网站被自动篡改了 DNS 设置&#xff0c;导致连接的 DNS 无法解析…...

告别卡顿闪烁!在Cesium 1.134中集成SOG格式,让400万高斯秒级加载

突破性能瓶颈&#xff1a;Cesium 1.134集成SOG格式实现400万高斯秒级渲染 在三维地理空间可视化领域&#xff0c;Cesium一直是开发者构建高精度场景的首选引擎。但当项目涉及数百万级高斯泼溅数据时&#xff0c;传统加载方式往往导致令人崩溃的卡顿和视角移动时的闪烁问题。最近…...

提升开发效率:用快马一键生成快速排序多版本性能对比工具

今天在优化一个数据处理模块时&#xff0c;遇到了需要选择合适排序算法的问题。不同数据特征下&#xff0c;快速排序的各种变体表现差异很大&#xff0c;手动测试效率实在太低。于是我用InsCode(快马)平台快速搭建了一个性能对比工具&#xff0c;整个过程比想象中简单很多。 需…...

AI 自动获客系统正在重构企业线索获取方式

在数字化营销持续深化的当下&#xff0c;企业获客成本逐年攀升&#xff0c;传统 “广撒网” 的线索获取模式早已难以为继。销售团队大量时间耗费在无效线索筛选上&#xff0c;真正用于精准跟进、成交的时间不足两成&#xff0c;人力与投入的失衡让企业陷入增长内耗。而 AI 自动…...

RRT*在ROS中的实战:用Gazebo仿真实现动态避障(Python+ROS Noetic)

RRT*在ROS中的实战&#xff1a;用Gazebo仿真实现动态避障&#xff08;PythonROS Noetic&#xff09; 路径规划是机器人自主导航的核心技术之一。在复杂动态环境中&#xff0c;如何快速找到一条安全且优化的路径一直是研究热点。RRT*&#xff08;Rapidly-exploring Random Trees…...

Bedtools终极指南:基因组数据分析的完整工具集

Bedtools终极指南&#xff1a;基因组数据分析的完整工具集 【免费下载链接】bedtools A powerful toolset for genome arithmetic. 项目地址: https://gitcode.com/gh_mirrors/be/bedtools Bedtools是一个强大的基因组数据分析工具集&#xff0c;专门用于处理基因组区间…...