12.18日作业

1、请使用LinkedList来模拟一个队列(先进先出的特性): [必做题]
1.1 拥有放入对象的方法void put(Object o)
1.2 取出对象的方法Object get()
1.3 判断队列当中是否为空的方法boolean isEmpty();并且,编写测试代码,验证你的队列是否正确。

import java.util.LinkedList;

MyQueue.java

	LinkedList<Object> list = new LinkedList<>();

	public void put(Object obj) {
		list.add(obj);
	}

	public Object get() {
		Object obj = list.getFirst(); // 获取最先放入的元素
		list.removeFirst(); // 移除元素
		return obj;
	}

	public boolean isEmpty() {
		return list.size() == 0 ? true : false;
	}
HomeWork11.java

MyQueue mq=new MyQueue();
		mq.put("a");
		mq.put("b");
		mq.put("c");
	
		while(!mq.isEmpty()){
			Object obj=mq.get();
			System.out.println(obj);
		}

2、假设顺序列表ArrayList中存储的元素是整型数字1~5,遍历每个元素,将每个元素顺序输出。 [必做题]

import java.util.ArrayList;
import java.util.Iterator;

HomeWork12.java

ArrayList<Integer> list=new ArrayList<>();
		
		list.add(1);
		list.add(2);
		list.add(3);
		list.add(4);
		list.add(5);
		
		Iterator<Integer> it=list.iterator();
		
		while(it.hasNext()){
			Integer i=it.next();
			System.out.println(i);
		}

3、在一个列表中存储以下元素:apple,grape,banana,pear
3.1 返回集合中的最大的和最小的元素
3.2 将集合进行排序,并将排序后的结果打印在控制台上 [必做题]

import java.util.Collections;
import java.util.LinkedList;

HomeWork13.java

LinkedList<String> link = new LinkedList<String>();
		link.add("apple");
		link.add("grape");
		link.add("banana");
		link.add("pear");
		
		System.out.println("最大的元素为" + Collections.max(link));
		System.out.println("最小的元素为" + Collections.min(link));
		
		Collections.sort(link);
		
		for (String s : link) {
			System.out.println(s);
		}

4、编写一个程序,创建一个 HashMap对象,用于存储银行储户的信息(其中储户的主要信息有储户的ID,姓名和余额)。另外,计算并显示其中某个储户的当前余额。 [选做题]

import java.util.HashMap;

Saver.java

private int id;
	private String name;
	private int balance;
	public Saver() {
		super();
	}
	public Saver(int id, String name, int balance) {
		super();
		this.id = id;
		this.name = name;
		this.balance = balance;
	}
	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 getBalance() {
		return balance;
	}
	public void setBalance(int balance) {
		this.balance = balance;
	}
	@Override
	public String toString() {
		return "Saver [id=" + id + ", name=" + name + ", balance=" + balance + "]";
	}
	@Override
	public int hashCode() {
		final int prime = 31;
		int result = 1;
		result = prime * result + getOuterType().hashCode();
		result = prime * result + balance;
		result = prime * result + id;
		result = prime * result + ((name == null) ? 0 : name.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;
		Saver other = (Saver) obj;
		if (!getOuterType().equals(other.getOuterType()))
			return false;
		if (balance != other.balance)
			return false;
		if (id != other.id)
			return false;
		if (name == null) {
			if (other.name != null)
				return false;
		} else if (!name.equals(other.name))
			return false;
		return true;
	}
HomeWork10.java

HashMap<Integer, Saver> hm=new HashMap<>();
		Saver s1=new Saver(1, "zhangsan", 1);
		Saver s2=new Saver(2, "lisi", 10);
		Saver s3=new Saver(3, "wangwu", 100);
		
		hm.put(s1.getId(),s1);
		hm.put(s2.getId(),s2);
		hm.put(s3.getId(),s3);
		
		for (Integer s : hm.keySet()) {
			System.out.println(hm.get(s));
		}

5、从控制台输入若干个单词(输入回车结束)放入集合中,将这些单词排序后(忽略大小写)打印出来。 [选做题]

import java.util.ArrayList;
import java.util.Collections;
import java.util.Scanner;

HomeWork14.java

Scanner sc=new Scanner(System.in);
		String str=sc.nextLine();
		
		String[] arr=str.split(" ");
		
		List<String> list=Arrays.asList(arr);
		
		Collections.sort(list,new Comparator<String>() {

			@Override
			public int compare(String o1, String o2) {
				return o1.compareToIgnoreCase(o2);
			}
		});
		
		System.out.println(list);
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章