- 练习一
- 练习二
- 练习三
- 使用泛型定义一个 Queue, 加入 5 个商品对象
演示先进先出 - 使用泛型定义一个 Stack, 加入 5 个 Dog 对象
演示先进后出
import java.util.*;
public class work {
public static void main(String[] args) {
//1. 使用泛型定义一个 Queue,, 加入 5 个商品对象
//演示先进先出
Queue queue = new linkedList<>();
Goods g1 = new Goods("苹果13ProMax", 13099);
Goods g2 = new Goods("华为P50", 6799);
Goods g3 = new Goods("三星w2021", 17999);
queue.offer(g1);
queue.offer(g2);
queue.offer(g3);
for (Goods g : queue) {
System.out.println(g.getName() + ":" + g.getPrice());
}
System.out.println("queue.element():" + queue.element().getName());//java.util.linkedList.element() 方法用于检索linkedList的第一个元素
System.out.println("queue.peek():" + queue.peek().getName());//java.util.linkedList.peek() 检索linkedList的头部元素(第一个元素)。
System.out.println("queue.poll():" + queue.poll().getName());//java.util.linkedList.poll() 检索并删除linkedList的第一个元素。
System.out.println("queue.remove():" + queue.remove().getName());//java.util.linkedList.remove() 用于检索和删除linkedList的第一个元素。
//2. 使用泛型定义一个 Stack,, 加入 5 个 Dog 对象
// 演示先进后出
Stack s = new Stack<>();
Dog d1 = new Dog("旺财", 2, '公');
Dog d2 = new Dog("旺旺", 3, '母');
Dog d3 = new Dog("大黑", 4, '公');
Dog d4 = new Dog("小黑", 1, '母');
Dog d5 = new Dog("来福", 5, '公');
s.add(d1);
s.add(d2);
s.add(d3);
s.push(d4);
s.push(d5);
for (Dog dog : s) {
System.out.println(dog.getName());
}
System.out.println("s.pop():" + s.pop().getName());//从堆栈中弹出栈顶元素
}
}
练习二
- 定义 Map, 加入一些数据
使用 entrySet 方式显示全部键、值其内容()
使用 keySet 方式显示全部键、值内容
使用 values 显示全部值内容
使用方法:containValue(), containKey()
使用 clear, isEmpty, size, hashcode 等方法 - 定义 TreeMap, 加入一些数据,key 乱序方法
使用 entrySet 显示其内容,注意其顺序
import java.util.*;
public class work {
public static void main(String[] args) {
//定义 Map, 加入一些数据
Map map = new HashMap<>();
map.put("昭君","庄周");
map.put("心灵战警","亚瑟");
map.put("鲁班","鲁班大师");
//使用 entrySet 方式显示全部键、值
Set> set = map.entrySet();
for (Map.Entry me : set){
String key = me.getKey();
String value = me.getValue();
System.out.println(key + " " + value);
}
//使用 keySet 方式显示全部键、值内容
Set keyset = map.keySet();
for (String s: keyset){
System.out.println(s+" "+map.get(s));
}
//使用 values 显示全部值内容
System.out.println(map.values());
//使用方法:containValue(), containKey()
System.out.println(map.containsKey("昭君"));
System.out.println(map.containsKey("王昭君"));
System.out.println(map.containsValue("亚瑟"));
System.out.println(map.containsValue("老亚瑟"));
//使用 clear, isEmpty, size, hashcode 等方法
//map.clear();
System.out.println(map.isEmpty());
System.out.println(map.size());
System.out.println(map.hashCode());
//定义 TreeMap, 加入一些数据,key 乱序方法
TreeMap tm = new TreeMap<>();
tm.put("a1","10");
tm.put("c1","1");
tm.put("e1","5");
//使用 entrySet 显示其内容,注意其顺序
Set> tmset = tm.entrySet();
for (Map.Entry ts:tmset){
String key = ts.getKey();
String value = ts.getValue();
System.out.println(key + " " + value);
}
}
}
练习三
使用 Collectins 的至少 5 个方法
import java.util.*;
public class work {
public static void main(String[] args) {
List list1 = new ArrayList<>();
List list2 = new ArrayList<>();
list1.add(1);
list1.add(8);
list1.add(1457);
list1.add(146);
list1.add(896);
list1.add(58);
Collections.shuffle(list1);//随机排序
System.out.println(list1);
Collections.sort(list1);//从小到大排序
System.out.println(list1);
Collections.reverse(list1);
System.out.println(list1);
Collections.swap(list1,0,5);
System.out.println(list1);
System.out.println(Collections.max(list1));
System.out.println(Collections.min(list1));
}
}



