javase List CRUD

// 用集合表示
package com.demo;

public interface StudentOperation{
	/*添加一个Student对象到集合中,并且保证Student对象
	 中的身份证唯一;如果不唯一则不能添加,并且返回false;
	 否则添加到集合中,返回true;*/
	boolean add(Student stu);
	
	
	/*根据下标值删除一个Student对象,并且将删除后的结果返回;*/
	Student del(int index);


	/*
	 根据下标值更新一个Student对象;
	 成功返回true;
	*/
	boolean update(int index,Student stu);
	
	
	/*
	 根据下标值,查询一个Student对象,并且返回;
	*/
	Student findByIndex(int index);
	
	
	/*
	 将所有的数据对象打印;
	 列表格式:
	 index => (对象中的信息)data1:data2:data3:data4:data5...
	*/
	void findAll();
}


package com.demo;

import java.util.*;

public class StudentOperationImpl implements StudentOperation{

    private static List<Student> stuList = new ArrayList<Student>();
    
    public boolean add(Student stu){
        Student stu1 = null;
        for(int i=0;i<stuList.size();i++){
            stu1 = stuList.get(i);
            if(stu1.getId().equals(stu.getId())){
                return false;
            }
        }
        stuList.add(stu);
        return true;
    }
    
    public Student del(int index){
        if(!stuList.isEmpty()){
            if(index < 0 || index >= stuList.size()){
                return null;
            }else{
                Student stu = stuList.remove(index);
                return stu;
            }
        }else{
            return null;
        }
    }

    public boolean update(int index,Student stu){
        if(!stuList.isEmpty()){
            if(index < 0 || index >= stuList.size()){
                return false;
            }else{
                Student stu1 = stuList.set(index,stu);
                if(stu1 != null){
                    return true;
                }else{
                    return false;
                }
            }
        }else{
            return false;
        }
    }
    
    public Student findByIndex(int index){
        if(!stuList.isEmpty()){
            if(index < 0 || index >= stuList.size()){
                return null;
            }else{
                return stuList.get(index);
            }
        }else{
            return null;
        }
    }
    
    public void findAll(){
        for(int i=0;i<stuList.size();i++){
            System.out.println(i+" => "+stuList.get(i));
        }
    }
}




package com.demo;

public interface ObjectOperation{
	
	/*
		1.添加一个对象到集合中;
		参数:是一个有界面封装好的一个字符串形式:"data:data:data:data:data...."
		需要将这个String对象进行字符串解析,然后获得一个String数组;
		再将String数组依次添加到Student对象中;
		然后在将Student对象添加集合中;
		添加对象的时候注意,保证名字唯一;
	*/
	public boolean addStudent(String str);
	/*2.从集合中删除一个对象
		这个参数可以是一个具体的下标值
	*/
	public boolean delStudent(String index);
	//3.修改集合中的一个对象;根据名字来查找;名字是不能修改的;
	//然后在根据具体的内容修改;这个集合中的数据;
	public boolean changeStudent(Student stu);
	//4.查询单个对象;根据下标查询;
	public Student findByIndex(String index);
	//5.查询全部对象;
	public List findAll();
}




package com.demo;

import java.util.*;

public interface StudentOperation{
	boolean add(Student stu);
	Student del(int index);
	boolean update(int index,Student stu);
	Student findByIndex(int index);
	void findAll();
}

class Student implements StudentOperation{
	private String name,sex,phone,address,date,id,email;
	private Integer age;
	private static List<Student> stuList = new ArrayList<Student>();

	//添加、删除、修改、查询方法;

	public Student(){}
	public boolean add(Student stu){
		Student stu1 = null;
		for(int i=0;i<stuList.size();i++){
			stu1 = stuList.get(i);
			if(stu1.getId().equals(stu.getId())){
				return false;
			}
		}
		stuList.add(stu);
		return true;
	}

	public Student del(int index){
		if(!stuList.isEmpty()){
			if(index < 0 || index >= stuList.size()){
				return null;
			}else{
				Student stu = stuList.remove(index);
				return stu;
			}
		}else{
			return null;
		}
	}
	
	public boolean update(int index,Student stu){
		if(!stuList.isEmpty()){
			if(index < 0 || index >= stuList.size()){
				return false;
			}else{
				Student stu1 = stuList.set(index,stu);
				if(stu1 != null){
					return true;
				}else{
					return false;
				}
			}
		}else{
			return false;
		}
	}
	
	public Student findByIndex(int index){
		if(!stuList.isEmpty()){
			if(index < 0 || index >= stuList.size()){
				return null;
			}else{
				return stuList.get(index);	
			}
		}else{
			return null;
		}
	}
	
	public void findAll(){
		for(int i=0;i<stuList.size();i++){
			System.out.println(i+" => "+stuList.get(i));
		}
	}
	
	//学生;
	public Student(String name,String sex,Integer age,String phone,String address,String date,String id,String email){
		this.name = name;
		this.sex = sex;
		this.age = age;
		this.phone = phone;
		this.address = address;
		this.date = date;
		this.id = id;
		this.email = email;
	}

	@Override
	public String toString(){
		return name+":"+sex+":"+age+":"+phone+":"+address+":"+date+":"+id+":"+email;
	}
	

	public void setName(String name){
		this.name=name;
	}
	public void setAge(Integer age){
		this.age=age;
	}
	public void setSex(String sex){
		this.sex=sex;
	}
	public void setPhone(String phone){
		this.phone=phone;
	}
	public void setAddress(String address){
		this.address=address;
	}
	public void setDate(String date){
		this.date=date;
	}
	public void setEmail(String email){
		this.email=email;
	}
	public void setId(){
		this.id=id;
	}
	public String getName(){
		return name;
	}
	public Integer getAge(){
		return age;
	}
	public String getSex(){
		return sex;
	}
	public String getPhone(){
		return phone;
	}
	public String getAddress(){
		return address;
	}
	public String getDate(){
		return date;
	}
	public String getEmail(){
		return email;
	}
	public String getId(){
		return id;	
	}
}

class TestStudent{
	public static void main(String args[]){
		//Student st1 = new Student();
		//List list = new ArrayList();
		Student stu = new Student();
		
		stu.add(new Student("Tom","male",23,"13670","广州 ","2009-11-14","445281","sdfa"));
		//System.out.println(stu.getId());
		for(int i=0;i<10;i++){
			stu.add(new Student("Tom"+i,"male",23,"13670","广州","2009-11-14","445281"+i,"sdfa"));
		}
		

		stu.findAll();
		
		System.out.println("删除:"+stu.del(5));
		
		System.out.println("修改结果:"+stu.update(1,new Student("Marry","male",23,"13670","广州","2009-11-14","445281","sdfa")));
	
		stu.findAll();

		System.out.println("查询下标值为1的结果:"+stu.findByIndex(1));
	}
}












评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值