java22 集合作业 六

#题一:
创建一DVD类,其中包含属性:名称、状态(String)、借出日期(Date)、借出次数(int),把如下显示的DVD添加到一个Map<String,DVD>集合中,并打印出所有DVD的信息,显示如下:

在这里插入图片描述

题二:
向题一中的map集合中添加DVD,如下:

请输入DVD名称:三傻大闹宝莱坞
新增《三傻大闹宝莱坞》成功!

题三:
删除DVD,如下:

请输入要删除的DVD名称: 泰坦尼克
删除《泰坦尼克》成功!

public class Dvd {
	private String name;
	private String state;
	private String lend;
	private Integer numof;

	public Dvd() {
		super();
		// TODO 自动生成的构造函数存根
	}

	public Dvd(String name, String state, String lend, Integer numof) {
		super();
		this.name = name;
		this.state = state;
		this.lend = lend;
		this.numof = numof;
	}

	public String getName() {
		return name;
	}

	public void setName(String name) {
		this.name = name;
	}

	public String getState() {
		return state;
	}

	public void setState(String state) {
		this.state = state;
	}

	public String getLend() {
		return lend;
	}

	public void setLend(String lend) {
		this.lend = lend;
	}

	public Integer getNumof() {
		return numof;
	}

	public void setNumof(Integer numof) {
		this.numof = numof;
	}

	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + ((lend == null) ? 0 : lend.hashCode());
		result = prime * result + ((name == null) ? 0 : name.hashCode());
		result = prime * result + ((numof == null) ? 0 : numof.hashCode());
		result = prime * result + ((state == null) ? 0 : state.hashCode());
		return result;
	}

	@Override
	public boolean equals(Object obj) {
		if (this == obj)
			return true;
		if (obj == null)
			return false;
		if (getClass() != obj.getClass())
			return false;
		Dvd other = (Dvd) obj;
		if (lend == null) {
			if (other.lend != null)
				return false;
		} else if (!lend.equals(other.lend))
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		if (numof == null) {
			if (other.numof != null)
				return false;
		} else if (!numof.equals(other.numof))
			return false;
		if (state == null) {
			if (other.state != null)
				return false;
		} else if (!state.equals(other.state))
			return false;
		return true;
	}

	@Override
	public String toString() {
		return "Dvd [name=" + name + ", state=" + state + ", lend=" + lend + ", numof=" + numof + "]";
	}

	public static void main(String[] args) {
		Dvd d1 = new Dvd("《西游记》", "可借", "null", 5);
		Dvd d2 = new Dvd("《泰坦尼克》", "可借", "null", 11);
		Dvd d3 = new Dvd("《浪漫满屋》", "可借", "null", 8);
		Dvd d4 = new Dvd("《风声鹤唳》", "可借", "null", 2);
		Dvd d5 = new Dvd("《罗马假日》", "已借出", "2017-01-31", 6);

		HashMap<String, Dvd> map = new HashMap<>();
		map.put(d1.getName(), d1);
		map.put(d2.getName(), d2);
		map.put(d3.getName(), d3);
		map.put(d4.getName(), d4);
		map.put(d5.getName(), d5);
//		打印出所有DVD的信息
		Collection<Dvd> va = map.values();
		Iterator<Dvd> it = va.iterator();
		System.out.println("\tDVD信息");
		while (it.hasNext()) {
			System.out.println(it.next());
		}

//		请输入DVD名称:三傻大闹宝莱坞   新增《三傻大闹宝莱坞》成功!
		Scanner input = new Scanner(System.in);
		System.out.println("请输入DVD名称:");
		String n = input.nextLine();

		if (map.containsKey(n) == false) {
			Dvd d = new Dvd();
			d.setName(n);
			map.put(d.getName(), d);

			System.out.println("新增" + d.getName() + "成功!");
		}

//		请输入要删除的DVD名称: 泰坦尼克   删除《泰坦尼克》成功!
		System.out.println("请输入要删除的DVD名称:");
		String un = input.nextLine();
		Set<String> key = map.keySet();
		Iterator<String> it2 = key.iterator();
		while (it2.hasNext()) {
			if (it2.next().equals(un)) {
				it2.remove();
			}
		}

		System.out.println("删除《泰坦尼克》成功!");
	}

}
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值