堆栈 Stack:表示一个先进后出的数据结构
// list集合
private LinkedList lst = new LinkedList();
public void push(Object obj) {
lst.addFirst(obj);
}
public Object pop() {
Object first = lst.getFirst();
lst.removeFirst();
return first;
}
public int size() {
return lst.size();
}
public static void main(String[] args) {
// 初始化
MyStack stack = new MyStack();
// 压栈
stack.push("a");
stack.push("b");
stack.push("c");
stack.push("d");
stack.push("e");
while (stack.size() != 0) {
Object val = stack.pop();
System.out.println(val);
}
}
遍历(2种)
foreach
Setset = new HashSet<>(); set.add(new Student(1,"sw",100f)); set.add(new Student(2,"daw",50f)); set.add(new Student(3,"dsa",30f)); for (Student student : set) { System.out.println(student); }
迭代器
Setset = new HashSet<>(); set.add(new Student(1,"sw",100f)); set.add(new Student(2,"daw",50f)); set.add(new Student(3,"dsa",30f)); //迭代器 Iterator it = set.iterator(); //循环遍历 while(it.hasNext()) { System.out.println(it.next()); }
TreeSet:根据某种(规则)对里面的元素进行排序
Setset = new TreeSet<>(); set.add(new Student(1,"sw",100f)); set.add(new Student(2,"daw",50f)); set.add(new Student(3,"dsa",30f)); set.forEach(System.out::println);
实体类代码
@Override
public int compareTo(Student o) {
// 比较着大于被比较着,返回1
// 比较着等于被比较着,返回0
// 比较着小于被比较着,返回-1
// if(this.getSid()>o.getSid())
// return 1;
// else {
// if(this.getSid()==o.getSid())
// return 0;
// else
// return -1;
// }
return this.getSid()-o.getSid();
}
打//也能用只是简化了



