java学习3创建学生属性:学号、姓名、电话 完全实现对象集合的增删改查。(控制台来做)
首先创建一个student类其中包括get,set与构造函数
/**
*
*/
package work2;
/**
* @author Administrator
*
*/
public final class Student {
private String id;
private int tell;
private String name;
/**
* 初始化数据
*/
public Student(String id,int tell,String name) {//构造函数赋初值
// TODO 自动生成的构造函数存根
this.id=id;
this.tell=tell;
this.name=name;
}
/**
*
* @param 传入数据set与get方法,数据的安全性,给了方法自己传入数据
*/
public void setId(String id){
this.id=id;
}
public void setTell(int tell){
this.tell=tell;
}
public void setName(String name){
this.name=name;
}
public String getId(){
return id;
}
public int geiTell(){
return tell;
}
public String geiName(){
return name;
}
}
在创建一个一个MyClass类包括增删改查方法
package work2;
import java.util.ArrayList;
import java.util.List;
public class MyClass {
// 建立一个List容器装数据
private List<Student> stuList;
public MyClass(){
stuList=new ArrayList<Student>();//建立一个stu对象
}
public boolean isHere(Student stu){//封装判断一个数的方法
boolean is=false;
for(Student s:stuList){//遍历for each
if(stu.getId().equals(s.getId()))//容器里传入的对象数据=遍历的对象数据,则存在,否则不存在
is=true;
}
return is;//返回判断
}
public boolean add(Student stu){
//首先判断是否存在
boolean is=this.isHere(stu);
if(!is){
stuList.add(stu);
}
return !is;
}
public boolean upDate(Student stu){
//首先判断是否存在
boolean is=this.isHere(stu);
for(Student s:stuList){
if(stu.getId().equals(s.getId())){
stuList.remove(s);
stuList.add(stu);
}
}
return is;
}
public boolean delete(String id){
boolean isSuc=false;
for(Student s:stuList){
if(id.equals(s.getId())){
stuList.remove(s);
isSuc=true;
}
}
return isSuc;
}
public List<Student> query(){
return this.stuList;
}
}
最后创建一个MainFrame类运用model view controller
通过调用MyClass中的方法实现
package work2;
import java.util.List;
import java.util.Scanner;
import javax.swing.plaf.synth.SynthStyle;
public class MainFrame {
public MyClass mc;//对象
private Scanner sc=new Scanner(System.in);
public MainFrame() {
// TODO 自动生成的构造函数存根
mc=new MyClass();
}
public Student getInfo(){//带参数的构造函数
System.out.println("请输入学号");
String id=sc.next();
System.out.println("请输入电话");
int tell=sc.nextInt();
System.out.println("请输入姓名");
String name=sc.next();
Student stu=new Student(id, tell, name);//数据封装成对象,
return stu;
}
public void add(){
Student stu=this.getInfo();//从控制台接收数据
boolean is=mc.add(stu);
if(is){
System.err.println("添加成功");
}
else
System.out.println("添加失败");
}
public void update(){
Student stu=this.getInfo();
boolean is=mc.upDate(stu);
if(is){
System.out.println("修改·成功");
}else
System.out.println("修改失败");
}
public void delete(){
System.out.println("请输入要删除学生的学号");
String id=sc.next();
boolean is=mc.delete(id);
if(is){
System.out.println("删除成功");
}else
System.out.println("删除失败,学生不存在");
}
public void quere(){
List<Student> stulist=mc.query();
for(Student s:stulist){
System.out.println("ID:"+s.getId()+"tell:"+s.geiTell()+"name:"+s.geiName());
}
}
public void start(){
boolean is=true;
while(is){
System.out.println("输入你要操作的选项:");
System.out.println("1,增加");
System.out.println("2.删除");
System.out.println("3,修改");
System.out.println("4,查找");
System.out.println("5,退出");
int option=sc.nextInt();
switch (option) {
case 1:
System.out.println("开始添加");
add();
break;
case 2:
System.out.println("开始修改");
update();
break;
case 3:
System.out.println("开始查询");
quere();
break;
case 4:
System.out.println("开始删除");
delete();
break;
case 5:
is=false;
System.out.println("欢迎使用,下次再见!!");
}
}
}
public static void main(String[] args) {
MainFrame mf=new MainFrame();
mf.start();
}
}
java学习3创建学生属性:学号、姓名、电话 完全实现对象集合的增删改查。(控制台来做)的更多相关文章
- 学生信息管理系统--基于jsp技术和MySQL的简单增删改查
web实现增删改查的方式有很多啊,对于初学者来说当然是要先了解各部分的传值的方式.本篇博客从jsp技术的最基础方面进行说明. 一.什么是jsp技术 首先,我们要了解什么是jsp技术. jsp技术是基于 ...
- [刘阳Java]_程序员Java编程进阶的5个注意点,别编程两三年还是增删改查
此文章也是关注网上好几篇技术文章后,今天分享出来.因为,总有在程序学习路上的小伙伴会感到迷茫.而迷茫存在的情况如下 第一种:在大学学习中出现的迷茫,不知道Java到底要学什么.学习Java的标准是什么 ...
- Android学习笔记_9_SQLiteOpenHelper对象之数据库增删改查以及事务回滚操作
一.SQLite数据库: 在Android平台上,集成了一个嵌入式关系型数据库—SQLite,SQLite3支持 NULL.INTEGER.REAL(浮点数字).TEXT(字符串文本)和BLOB(二进 ...
- Java web 简单的增删改查程序(超详细)
就是简单的对数据进行增删改查.代码如下: 1.bean层:用来封装属性及其get set方法 toString方法,有参构造方法,无参构造方法等. public class Bean { privat ...
- Android学习---数据库的增删改查(sqlite CRUD)
上一篇文章介绍了sqlite数据库的创建,以及数据的访问,本文将主要介绍数据库的增删改查. 下面直接看代码: MyDBHelper.java(创建数据库,添加一列phone) package com. ...
- Android(java)学习笔记245:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- Android(java)学习笔记189:ContentProvider使用(银行数据库创建和增删改查的案例)
1. Android的四大组件: (1)Activity 用户交互的UI界面 (2)Service 后台运行的服务 (3)BroadcastReceiver 广播接收者 (4)ContentPro ...
- 招新系统(jsp+servlet,实现简略前端网页注册登录+后台增删改查,分学生和管理员,Java语言,mysql数据库连接,tomcat服务器)
生活不只是眼前的苟且,还有诗和远方. 架构说明: 要求是采用MVC模式,所以分了下面的几个包,但是由于是第一次写,可能分的也不是很清楚: 这个是后台部分的架构: 这个是前端的的展示: (那个StuLo ...
- 【良心保姆级教程】java手把手教你用swing写一个学生的增删改查模块
很多刚入门的同学,不清楚如何用java.swing去开发出一个系统? 不清楚如何使用java代码去操作数据库进行增删改查一些列操作,不清楚java代码和数据库(mysql.sqlserver)之间怎么 ...
随机推荐
- js replaceAll全部替换
js不支持replaceAll,可以用函数new RegExp('要替换的内容','g')代替, 代码: str.replace(new RegExp('要替换的内容','g'),"替换内容 ...
- ERROR: APK path is not specified for
1. 打开project structure 2.设置outpath路径 最好为绝对路径 点击确定 重新编译即可. Note: Android Studio版本使用
- Bundle Adjustment---即最小化重投影误差(高翔slam---第七讲)
一.历史由来 Adjustment computation最早是由geodesy的人搞出来的.19世纪中期的时候,geodetics的学者就开始研究large scale triangulations ...
- WebApi中Swagger的使用(超级简单)
Swagger解释 Swagger是一种Rest API的简单但强大的表示方式,她是标准的与语言无关,这种表示方式不但人可读,而且机器可读. 可以作为Rest API的交互式文档,也可以作为Rest ...
- JFinal Web开发学习(九)后台添加前台显示博客
效果: 发博客: 显示博客: 后台:使用hui-admin,文章编辑器是百度开源的ueditor 前台:使用layui前端框架 1.写控制器BlogController controller包中 pa ...
- VS2013中Nuget程序包管理器控制台使用入门(二)-如何使用Nuget提供的帮助(原创)
如何使用Nuget提供的帮助? 1.从get-help Nuget开始,键入“get-help NuGet”以查看所有可用的 NuGet 命令. 用法: PM> get-help Nuget 主 ...
- 9.4-9.19 h5日记总结
总结: 1.标签 (1)单.双标签 (2)块级.行级标签 (3)标签的属性 2.CSS (1)选择器 *.id.class.标签.后代.子代.并集.交集.伪类.结构 (2)层叠性,即选择器权重的计算 ...
- PAT 1039 到底买不买(20)(20 分)
1039 到底买不买(20)(20 分) 小红想买些珠子做一串自己喜欢的珠串.卖珠子的摊主有很多串五颜六色的珠串,但是不肯把任何一串拆散了卖.于是小红要你帮忙判断一下,某串珠子里是否包含了全部自己想要 ...
- Python.SQLAlchemy.0
1. SQLAlchemy and You http://lucumr.pocoo.org/2011/7/19/sqlachemy-and-you/ 2. Overview http://docs.s ...
- (O)JS:执行环境、变量对象、活动对象和作用域链(原创)
var a=1; function b(x){ var c=2; console.log(x); } b(3); ·执行环境(execution context),也称为环境.执行上下文.上下文环境. ...