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

【韩顺平零基础学java】第15章练习题

1

在这里插入图片描述

2.

在这里插入图片描述
使用方法
1.写方法
2.使用@Test注解
3.点击左侧运行符号运行
在这里插入图片描述

3.

在这里插入图片描述

  • User
package com.hspedu.homework;/*** @author 韩顺平* @version 1.0* 该类包含:private成员变量(int类型) id,age;(String 类型)name*/
public class User {private int id;private int age;private String name;public User(int id, int age, String name) {this.id = id;this.age = age;this.name = name;}public int getId() {return id;}public void setId(int id) {this.id = id;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic String toString() {return "User{" +"id=" + id +", age=" + age +", name='" + name + '\'' +'}';}
}
  • DAO
 package com.hspedu.homework;import java.util.*;/*** @author 韩顺平* @version 1.0* 定义个泛型类 DAO<T>,在其中定义一个Map 成员变量,Map 的键为 String 类型,值为 T 类型。*  **  * 分别创建以下方法:*  * (1) public void save(String id,T entity): 保存 T 类型的对象到 Map 成员变量中*  * (2) public T get(String id):从 map 中获取 id 对应的对象*  * (3) public void update(String id,T entity):替换 map 中key为id的内容,改为 entity 对象*  * (4) public List<T> list():返回 map 中存放的所有 T 对象*  * (5) public void delete(String id):删除指定 id 对象*/
public class DAO<T> {//泛型类private Map<String, T> map = new HashMap<>();public T get(String id) {return map.get(id);}public void update(String id,T entity) {map.put(id, entity);}//返回 map 中存放的所有 T 对象//遍历map [k-v],将map的 所有value(T entity),封装到ArrayList返回即可public List<T> list() {//创建 ArraylistList<T> list = new ArrayList<>();//遍历mapSet<String> keySet = map.keySet();for (String key : keySet) {//map.get(key) 返回就是 User对象->ArrayListlist.add(map.get(key));//也可以直接使用本类的 get(String id)}return list;}public void delete(String id) {map.remove(id);}public void save(String id,T entity) {//把entity保存到mapmap.put(id, entity);}}
  • Homework
public class Homework {public static void main(String[] args) {}@Testpublic void testList() {//说明//这里我们给T 指定类型是UserDAO<User> dao = new DAO<>();dao.save("001", new User(1,10,"jack"));dao.save("002", new User(2,18,"king"));dao.save("003", new User(3,38,"smith"));List<User> list = dao.list();System.out.println("list=" + list);dao.update("003", new User(3, 58, "milan"));dao.delete("001");//删除System.out.println("===修改后====");list = dao.list();System.out.println("list=" + list);System.out.println("id=003 " + dao.get("003"));//milan}
}

相关文章:

  • Redis 5种常用数据类型
  • SaaS产品运营|一文讲清楚为什么ToB产品更适合采用PLG模式?
  • PFA烧杯带把手带刻度1000ml3000mlPFA氟树脂温度范围-270~250℃
  • Java并发编程深度解析:构建高并发应用的实践与探究
  • 在Qt编写的exe或者dll中设置版本号
  • 人工智能历史与现状
  • 自旋锁(spin lock)
  • RabbitMQ消息的可靠传输和防止消息丢失
  • vscode 调试
  • Redis之线程IO模型
  • Redisson实现分布式锁
  • C语言 -- 宏的变长参数定义
  • kotlin lambda 表达式的原理、语法和详细用法
  • 专业纸箱厂:品质之选
  • JS 实现Date日期格式的本地化
  • 《Javascript数据结构和算法》笔记-「字典和散列表」
  • 【css3】浏览器内核及其兼容性
  • css系列之关于字体的事
  • CSS选择器——伪元素选择器之处理父元素高度及外边距溢出
  • es6
  • Java知识点总结(JDBC-连接步骤及CRUD)
  • OSS Web直传 (文件图片)
  • React-生命周期杂记
  • vue 个人积累(使用工具,组件)
  • Vue UI框架库开发介绍
  • vue+element后台管理系统,从后端获取路由表,并正常渲染
  • 基于axios的vue插件,让http请求更简单
  • 前端相关框架总和
  • 如何编写一个可升级的智能合约
  • 我从编程教室毕业
  • Nginx惊现漏洞 百万网站面临“拖库”风险
  • python最赚钱的4个方向,你最心动的是哪个?
  • 湖北分布式智能数据采集方法有哪些?
  • ​configparser --- 配置文件解析器​
  • ​人工智能书单(数学基础篇)
  • ### Error querying database. Cause: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException
  • #每日一题合集#牛客JZ23-JZ33
  • $var=htmlencode(“‘);alert(‘2“); 的个人理解
  • (1)(1.11) SiK Radio v2(一)
  • (39)STM32——FLASH闪存
  • (6)STL算法之转换
  • (C语言)逆序输出字符串
  • (四)图像的%2线性拉伸
  • (转)清华学霸演讲稿:永远不要说你已经尽力了
  • (转)项目管理杂谈-我所期望的新人
  • .NET Core WebAPI中使用Log4net 日志级别分类并记录到数据库
  • .Net Remoting(分离服务程序实现) - Part.3
  • .net 流——流的类型体系简单介绍
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .net中生成excel后调整宽度
  • /dev下添加设备节点的方法步骤(通过device_create)
  • @DataRedisTest测试redis从未如此丝滑
  • [1]-基于图搜索的路径规划基础
  • [AHOI2009]中国象棋 DP,递推,组合数
  • [Android] 修改设备访问权限