Demand: There is a membership form, you can add members, delete members, membership inquiries, show all member information. Members have a name, rank, integral property.
Realization of ideas: a member of the class, with the name, rank, integrating three private property. A membership form class, with a membership table properties (ArrayList collection). A test class.
Key knowledge: ArrayList collection, downward transition (polymorphic knowledge)
Member Class: Vip.java
import java.util.ArrayList;
import java.util.List;
public class Vip{
private String name;//名字
private String level;//等级
private int integral;//积分
public Vip() {
}
public Vip(String name, String level, int integral) {
this.name = name;
this.level = level;
this.integral = integral;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getLevel() {
return level;
}
public void setLevel(String level) {
this.level = level;
}
public int getIntegral() {
return integral;
}
public void setIntegral(int integral) {
this.integral = integral;
}
@Override
public String toString() {
return "{" +
"姓名:'" + name + '\'' +
", 会员等级:'" + level + '\'' +
", 积分:" + integral +
'}';
}
}
Member table class: VipBase.java
import java.util.ArrayList;
import java.util.List;
public class VipBase {
private ArrayList list = new ArrayList<>();//会员表
public List getList() {
return list;
}
public void setList(ArrayList list) {
this.list = list;
}
//增加会员
public void add(Vip vip) {
this.getList().add(vip);//把会员vip添加到会员表
}
//查找名字为name的会员
public void find(String name){
boolean flag = false;//中间变量,判断是否存在名字是name的会员
for (Object o :
this.getList()) {
Vip v = (Vip) o;//因为会员表中是对象,把其强制转换为Vip类
if(v.getName().equals(name)){
System.out.println("查询结果:"+v);
flag = true;//存在
}
}
if(!flag){//如果不存在
System.out.println("抱歉,系统里没有这个人");
}
/*
上述增强for循环也可换成下面的普通for循环:
for (int i=0;i<this.getList().size();i++){
Vip v = (Vip) this.getList().get(i);
if(v.getName().equals(name)){
System.out.println("查询结果:"+v);
flag = true;
}
}*/
}
//删除名字为name的会员
public void delete(String name){
for (Object o :
this.getList()) {
Vip v = (Vip) o;
if(v.getName().equals(name)){
// this.getList().remove(v);
System.out.println("已成功删除"+v);
}
}
}
//显示会员
public void show(){
for (Object o :
this.getList()) {
Vip v = (Vip) o;
System.out.println(v);
}
}
}
Test categories: Demo.java
import java.util.ArrayList;
import java.util.List;
public class Demo {
public static void main(String[] args) {
//创建会员表
VipBase vipBase = new VipBase();
//创建会员
Vip vip = new Vip("张三", "普通", 100);
Vip vip1 = new Vip("王五","紫金",10000);
Vip vip2 = new Vip("赵宇","白金",1000);
Vip vip3 = new Vip("李桥","钻石",100000);
//把会员添加到会员表
vipBase.add(vip);
vipBase.add(vip1);
vipBase.add(vip2);
vipBase.add(vip3);
// System.out.println("输出所有会员,看是否添加成功:");
// System.out.println(vipBase.getList());
//查找会员
vipBase.find("李桥");//查询结果:{姓名:'李桥', 会员等级:'钻石', 积分:100000}
vipBase.find("李中");//抱歉,系统里没有这个人
//删除会员
vipBase.delete("赵宇");//已成功删除{姓名:'赵宇', 会员等级:'白金', 积分:1000}
System.out.println("删除上面成员后的会员表:");
System.out.println(vipBase.getList());
//显示所有会员
vipBase.show();
}
}