继承
集合
“高级版的数组”
不同于数组,长度是动态可变的
集合的框架:
泛型集合–ArrayList
创建集合对象:
ArrayList<值的类型> list = new ArrayList<值的类型>();
获取集合长度:
list.size();
添加集合元素:
list.add(对象或值);
获取集合元素:
list.get(下标);
修改/替换集合元素:
list set(下标,对象或值);
循环集合元素:
for
foreach
删除集合元素:
list.remove(下标); //通过下标删除指定元素
list.remove(对象名); //通过对象名删除指定元素
list.cleat();
//删除时自动补上,序号连续
package test01;
import java.util.ArrayList;
public class Test {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
System.out.println(list.size());
list.add("111");
list.add("222");
list.add("444");
//查看长度
System.out.println(list.size());
//获取操作
System.out.println(list.get(1));
//替换操作
list.set(1, "333");
//循环输出
System.out.println("循环输出");
for(int i = 0;i < list.size();i++) {
System.out.println(list.get(i));
}
//增强for
System.out.println("增强for");
for (String str : list) {
System.out.println(str);
}
//删除操作
System.out.println("删除操作↓");
list.remove(0);
list.remove("333");
list.clear();
for(int i = 0;i < list.size();i++) {
System.out.println(list.get(i));
}
}
}
泛型集合–HashMap
也称“键值集合”
key–value
创建集合对象
HashMap<KT,VT> map = new HashMap<KT,VT>();
获取集合长度
map.size();
添加集合对象
map.put(key,value);
获取集合元素
map.get(key);
循环集合元素
foreach //对键的循环
map.keySet();
foreach //对值的循环
map.values();
删除集合元素
map.remove(key);
map.clear();
package test02;
import java.util.HashMap;
public class Test {
public static void main(String[] args) {
HashMap<String, String> map = new HashMap<String, String>();
//添加元素
map.put("a", "alice");
map.put("t", "tony");
map.put("j", "jhon");
//替换元素
map.put("a", "victory");
//获取长度
System.out.println(map.size());
//通过键获取值
System.out.println(map.get("a"));
//增强foreach获取键值
for (String key : map.keySet()) {
System.out.println(key);
}
//增强foreach获取值
for (String value : map.values()) {
System.out.println(value);
}
//删除操作(通过键删除)
map.remove("a");
// map.clear();
for (String value : map.values()) {
System.out.println(value);
}
}
}
分层
表示层
业务逻辑层(Business Logic Layer)
数据访问层(Data Access Layer)
使用Package进行分层
表示层:page等
业务逻辑层:service
数据访问层:dao(Data Access Object)
学生信息管理系统
Page
package page;
import java.util.ArrayList;
import java.util.Scanner;
import entity.Student;
import service.StudentService;
public class Page {
StudentService ss = new StudentService();
Scanner input = new Scanner(System.in);
public void init() {
ss.init();
HomePage();
}
public void HomePage() {
while(true) {
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("*********************");
System.out.println("请选择:");
int choice = input.nextInt();
if(choice == 1) {
searchPage();
}else if(choice == 2) {
addPage();
}else if(choice == 3) {
updatePage();
}else if(choice == 4) {
updatePage();
}else if(choice == 5) {
System.out.println("谢谢使用");
break;
}else {
System.out.println("输入错误,重新输入");
}
}
}
public void searchPage() {
ArrayList<Student> list = ss.search();
System.out.println("*************************");
System.out.println("编号\t姓名\t年龄\t爱好");
System.out.println("*************************");
for (Student s : list) {
System.out.print(s.getId() + "\t");
System.out.print(s.getName() + "\t");
System.out.print(s.getAge() + "\t");
System.out.print(s.getHobby() + "\n");
}
System.out.println("*************************");
}
public void addPage() {
System.out.println("请输入编号");
int id = input.nextInt();
System.out.println("请输入姓名");
String name = input.next();
System.out.println("请输入年龄");
int age = input.nextInt();
System.out.println("请输入爱好");
String hobby = input.next();
Student stu = new Student(id,name,age,hobby);
int result = ss.add(stu);
if(result == 1) {
System.out.println("添加成功");
}else {
System.out.println("添加失败");
}
}
public void updatePage() {
System.out.println("请输入编号");
int id = input.nextInt();
System.out.println("请输入姓名");
String name = input.next();
System.out.println("请输入年龄");
int age = input.nextInt();
System.out.println("请输入爱好");
String hobby = input.next();
Student stu = new Student(id,name,age,hobby);
int result = ss.update(stu);
if(result == 1) {
System.out.println("修改成功");
}else {
System.out.println("修改失败");
}
}
public void deletePage() {
System.out.println("请输入要删除的编号");
int id = input.nextInt();
int result = ss.delete(id);
if(result == 1) {
System.out.println("删除成功");
}else {
System.out.println("删除失败");
}
}
}
StudentService
package service;
import java.util.ArrayList;
import dao.StudentDao;
import entity.Student;
public class StudentService {
StudentDao sd = new StudentDao();
public void init() {
sd.init();
}
public ArrayList<Student> search(){
return sd.search();
}
public int add(Student stu) {
return sd.add(stu);
}
public int update(Student stu) {
return sd.update(stu);
}
public int delete(int id) {
return sd.delete(id);
}
}
StudentDao
package dao;
import java.util.ArrayList;
import entity.Student;
public class StudentDao {
ArrayList<Student> list = new ArrayList<Student>();
//1.信息初始化
public void init() {
Student stu1 = new Student(1001,"alice",19,"play");
Student stu2 = new Student(1002,"tony",20,"baseball");
Student stu3 = new Student(1003,"victor",21,"basketball");
list.add(stu1);
list.add(stu2);
list.add(stu3);
}
//2.获取Student的值
public ArrayList search() {
return list;
}
//3.添加信息
public int add(Student stu) {
boolean flag = false;
for (Student s : list) {
if(s.getId() == stu.getId()) {
flag = true;
}
}
if(flag == true) {
return 0;
}else {
list.add(stu);
return 1;
}
}
//4.修改信息
public int update(Student stu) {
boolean flag = false;
int index = 0;
for (int i = 0; i < list.size(); i++) {
if(list.get(i).getId() == stu.getId()) {
flag = true;
index = i;
}
}
if(flag == true) {
list.set(index, stu);
return 1;
}else {
return 0;
}
}
//5.删除信息
public int delete(int id) {
boolean flag = false;
int index = 0;
for (int i = 0; i < list.size(); i++) {
if(list.get(i).getId() == id) {
flag = true;
index = i;
}
}
if(flag == true) {
list.remove(index);
return 1;
}else {
return 0;
}
}
}
Student
package entity;
public class Student {
private int id;
private String name;
private int age;
private String hobby;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getHobby() {
return hobby;
}
public void setHobby(String hobby) {
this.hobby = hobby;
}
public Student() {
super();
}
public Student(int id, String name, int age, String hobby) {
super();
this.id = id;
this.name = name;
this.age = age;
this.hobby = hobby;
}
}
Test
package test;
import page.Page;
public class Test {
public static void main(String[] args) {
Page page = new Page();
page.init();
}
}