Java学习(84)Java集合——案例:公告管理(ArrayList增删改查)
案例:公告管理,增删改查(ArrayList增删改查)
- 公告管理需求:
- 1. 功能需求
- 2. 公告类属性:
- 3. 公告类方法
- 实现代码
- 定义公告类
- 公告的添加和显示
- 公告的删除和修改
- 运行结果:
公告管理需求:
1. 功能需求
(1) 公告的添加和显示;
(2) 在指定位置处插入广告;
(3) 删除公告;
(4) 修改公告。
2. 公告类属性:
(1) 编号id;
(2) 标题title;
(3) 创建人creator;
(4) 创建时间creatTime。
3. 公告类方法
(1) 构造方法;
(2) 获取和设置属性值的方法。
实现代码
定义公告类
package com.study.set;
import java.util.Date;
public class Notice {private int id;//IDprivate String title;//标题private String creator;//创建人private Date createTime;//创建时间public Notice(int id, String title, String creator, Date createTime) {super();this.id = id;this.title = title;this.creator = creator;this.createTime = createTime;}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 getCreator() {return creator;}public void setCreator(String creator) {this.creator = creator;}public Date getCreateTime() {return createTime;}public void setCreateTime(Date createTime) {this.createTime = createTime;}
}
注:快捷建立构造方法:{} → \to →右键 → \to →Source → \to →Generate Constructor using Fields… → \to →勾选方法 → \to →创建完毕
公告的添加和显示
// 创建Notice类的对象,生成三条公告Notice notice1 = new Notice(1, "欢迎来到慕课网!", "管理员", new Date());Notice notice2 = new Notice(2, "请同学们按时提交作业!", "老师", new Date());Notice notice3 = new Notice(3, "考勤通知!", "老师", new Date());// 添加公告ArrayList noticeList = new ArrayList();noticeList.add(notice1);noticeList.add(notice2);noticeList.add(notice3);// 显示公告System.out.println("公告的内容为:");for (int i = 0; i < noticeList.size(); i++) {System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());}
注:在显示代码中,noticeList.get(i)
的返回值类型为Object,而只有Notice类才有getTitle()
方法,因此这里需要进行类型的强制转换。
公告的删除和修改
修改:set
System.out.println("**************************************");// 在第一条公告后面添加一条新公告Notice notice4 = new Notice(4, "在线编辑器可以使用啦!", "管理员", new Date());noticeList.add(1, notice4);// 显示公告System.out.println("公告的内容为:");for (int i = 0; i < noticeList.size(); i++) {System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());}System.out.println("**************************************");// 删除按时提交作业的公告noticeList.remove(2);// 显示公告System.out.println("删除公告后的内容为:");for (int i = 0; i < noticeList.size(); i++) {System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());}//将第二条公告改为:Java在线编辑器可以使用啦!System.out.println("**************************************");//修改第二条公告中title的值notice4.setTitle("Java在线编辑器可以使用啦!");noticeList.set(1, notice4);System.out.println("修改后公告的内容为:");for (int i = 0; i < noticeList.size(); i++) {System.out.println(i + 1 + ":" + ((Notice) (noticeList.get(i))).getTitle());}
运行结果:
公告的内容为:
1:欢迎来到学习网!
2:请同学们按时提交作业!
3:考勤通知!
**************************************
公告的内容为:
1:欢迎来到学习网!
2:在线编辑器可以使用啦!
3:请同学们按时提交作业!
4:考勤通知!
**************************************
删除公告后的内容为:
1:欢迎来到学习网!
2:在线编辑器可以使用啦!
3:考勤通知!
**************************************
修改后公告的内容为:
1:欢迎来到学习网!
2:Java在线编辑器可以使用啦!
3:考勤通知!
注:格式化快捷键:Ctrl+F。
Java学习(84)Java集合——案例:公告管理(ArrayList增删改查)相关推荐
- MySQL学习总结(2) --- 数据表管理(增删改查)、使用DQL查询数据(SELECT)
MySQL学习总结(2) - 数据表管理(增删改查).使用DQL查询数据(SELECT) 1. 数据管理(增删改查) 数据库数据管理方法: a.通过SQLyog等管理工具管理数据库数据 b. 通过DM ...
- 论坛模块_版块管理_增删改查实现上下移动
论坛模块_版块管理1_增删改查 设计实体Forum.java public class Forum {private Long id;private String name;private Strin ...
- 使用SpringBoot一小时快速搭建一个简单后台管理(增删改查)(超详细教程)
最近也是临近期末了,各种的期末大作业,后台管理也是很多地方需要用到的,为了方便大家能快速上手,快速搭建一个简单的后台管理,我花了两天时间整理了一下 我会从0开始介绍,从数据库的设计到前端页面的引入最后 ...
- javaweb增删改查实例_JavaWeb图像可视化管理系统之后台搭建(二)用户管理与增删改查(内含代码)...
上一篇文章中,我们介绍了环境配置与后台设计,对于不了解的同学,可以看这个链接 CharlesDDDD:JavaWeb图像可视化管理系统之后台搭建(一)环境配置与后台设计zhuanlan.zhihu. ...
- Python面向对象编程案例:封装数据库增删改查操作
问题描述:编写一个类,封装对SQLite数据库的增删改查操作,使得数据库操作更加友好,类的使用者不需要了解SQL语句的语法规则,只需要了解类的接口即可. 思考下面的问题,尝试着写一写,然后到达文末查看 ...
- es java 增删改查_【java作业】如何用序列化的方法写增删改查
培训19天的时候老师布置了一个用序列化反序列化做学生管理系统的作业.百度没找到怎么写,后来老师写了一份,我就贴出来吧.对蠢萌蠢萌.纱布拉基的我来说真TM难 首先你的包和里面的类是跟下图这样的:Work ...
- java ee 修改_java ee 在数据库中执行增删改查
1.先建一个主页面里面包含着添加方法 学生信息 {//1.连接数据库// 1)加载驱动 Class.forName("oracle.jdbc.driver.OracleDriver" ...
- 综合案例--银行账户(增删改查)
综合练习–银行案例 创建数据库 数据库 Account 创建一张表 t_ccount cardId:字符串,主键 password:字符串,非空 username:字符串,非空 balance:小数, ...
- java修改cookie的值_Java管理Cookie增删改查操作。
Cookie属性 了解这几个属性之后,就知道如何进行Cookie的操作了. name Cookie的名称. value Cookie的值. maxAge Cookie的失效时间,有以下几种值,默认为- ...
最新文章
- 【Netty】Netty线程模型和EventLoop
- 《JavaScript忍者秘籍》——导读
- 使用RAC和Data Guard构建MAA架构
- docker中centos遇到sudo: command not found
- python(15)-window7配置iPython
- STM8 ADC转换模式-------带缓存的连续模式
- 大数据是国家目前急需的技术领域
- html定义页脚有什么用,HTML5中footer标签的用法你知道吗?,HTML5中的footer标签是什么意思?...
- html表单提交带后台,form表单提交数据给后台
- 情景分析是什么?我们该如何去理解这个概念?
- linux双线路由,linux双线路由配置方法介绍
- 在线大学计算机资源,计算机专业常用网站及数据库-计算机及自动化专业网上资源.ppt...
- 苹果CMS海螺模板4.0修复版带后台 附安装教程
- phpmywind教程:单页信息调用说明【进阶篇一】
- BackupManagerService分析 基于Android 8.0
- jhipster使用liquibase修改一个表的一个字段
- Kubernetes基础1
- 全国计算机图书销售订单记录,销售订单管理信息系统.doc
- 【台达 PLC - 0】 - 电气基础
- Swift-自动引用计数(Automatic Reference Counting)(十四)
热门文章
- 学 计算机 知识视频,教你学电脑——计算机基础知识【视频】*
- Pr菜鸟入门教程(剪辑部分)
- couldn't create PTY
- Excel技能之查找筛选排序,同事竖起大拇指
- 华为路由器负载均衡_华为AR路由器配置双出口静态IP双链路负载 | 铭泰网络
- html桌面插件,js桌面虚拟键盘插件A-Keyboard
- 太爽了!35岁程序员被裁后反而实现财富自由!
- 古筝d调变降e调怎么办_古筝各个调式转调详细解读
- 你所不知的米聊和微信的前身——酷啦啦
- 图解在EXCEL中,通过身份证自动获得出生日期和性别。