-
先说下关于集合的遍历
public static void main(String[] args) {
List list = new ArrayList();
list.add("3");
list.add("小明");
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
Object next = iterator.next();
System.out.println(next);
}
这是关于迭代器的用法
public static void main(String[] args) {
List list = new ArrayList();
list.add("3");
list.add("小明");
for (Object book:list) {
System.out.println(book);
}
}
这是增强for循环
底层仍然是迭代器
-
单列集合
-
双列集合
Collections方法
package Collection;
import java.util.ArrayList;
import java.util.Collection;
import java.util.List;
public class CollectionDemo {
public static void main(String[] args) {
//add 添加
List list = new ArrayList();
list.add("嘉嘉");
list.add(10);
list.add(true);
System.out.println("list ="+list);
//remove 删除
list.remove(2);
System.out.println("list="+list);
//contains 查找元素是否存在
System.out.println(list.contains("嘉嘉"));
//size:获取元素个数
System.out.println(list.size());
//isEmpty:判断是否为空
System.out.println(list.isEmpty());
//clear:清空
list.clear();
System.out.println(list);
//addAll:添加多个元素
List list2 = new ArrayList();
list2.add("三国");
list2.add(300);
list.addAll(list2);
System.out.println(list);
//containsAll:查找多个元素是否都存在
System.out.println(list.containsAll(list2));
//removeAll:删除多个元素
list.removeAll(list);
System.out.println(list);
System.out.println(list2);
}
}
List 接口方法
public class List_ {
public static void main(String[] args) {
//1.List集合类中元素有序(即添加顺序和取出顺序一致,且可以重复)[案例]
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add("d");
list.add("e");
list.add("f");
System.out.println(list);
//2.List集合中的每个元素都有其对应的索引顺序,即支持索引
//索引是从零开始的
System.out.println(list.get(3));
}
}
以下是list方法
package list;
import java.util.ArrayList;
import java.util.List;
public class ListMethod {
@SuppressWarnings("all")
public static void main(String[] args) {
List list = new ArrayList();
//下面是几种常用的方法
list.add("AA");
list.add("BB");
//在索引等于1的地方插入CC
list.add(1,"CC");
System.out.println(list);
//从index位置开始将else中的所有元素添加进来
List list2 = new ArrayList();
list2.add("DD");
list2.add("EE");
list2.add("FF");
list.addAll(2,list2);
System.out.println(list);
//获取指定Index中的元素
System.out.println(list.get(5));
//返回obj在集合中首次出现的位置
System.out.println(list.indexOf("DD"));
//返回obj在集合中末次出现的位置
System.out.println(list.lastIndexOf("BB"));
//移除指定index位置中的元素,并返回此元素
System.out.println(list.remove(3));
System.out.println(list);
//设置指定index位置的元素为ele,相当于替换
list.set(2,"EE");
System.out.println(list);
//返回从fromIndex到toIndex位置的子集合
//注意 它这是一个前闭区间后开区间的范围
System.out.println(list.subList(1,3));
}
}
小测试练练手
public class ListTest {
public static void main(String[] args) {
List list = new ArrayList();
for (int i = 0; i <11 ; i++) {
list.add("hello"+i);
System.out.println(list);
}
list.add(1,"小于");
list.get(4);
list.remove(5);
list.set(6,"老大");
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
Object next = iterator.next();
System.out.println(next);
}
}
}
三种遍历方式
-
如下图
public class ListFor {
@SuppressWarnings("all")
public static void main(String[] args) {
List list = new ArrayList();
list.add("AA");
list.add("BB");
list.add("CC");
System.out.println(list);
//迭代器遍历
Iterator iterator = list.iterator();
while (iterator.hasNext()) {
Object next = iterator.next();
System.out.println(next);
}
//增强For遍历
for (Object o :list) {
System.out.println(o);
}
//普通For循环遍历
for (int i = 0; i
排序练习的小测试练练手
要求如下图,回顾冒泡排序
public class ListTest2 {
public static void main(String[] args) {
List list = new ArrayList();
list.add(new Book("三体",100,"刘慈欣"));
list.add(new Book("三体2",50,"刘慈欣"));
list.add(new Book("三体3",160,"刘慈欣"));
for (int j = 0; j < list.size(); j++) {
for (int k = 0; k book2.getPrice()){
list.set(j,book2);
list.set(j+1,book1);
for (Object o :list) {
System.out.println(o);
}
}
}
}
}
}
class Book{
String name;
int price;
String author;
public Book(String name, int price, String author) {
this.name = name;
this.price = price;
this.author = author;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getPrice() {
return price;
}
public void setPrice(int price) {
this.price = price;
}
public String getAuthor() {
return author;
}
public void setAuthor(String author) {
this.author = author;
}
@Override
public String toString() {
return
"name='" + name + ''' +
", price=" + price +
", author='" + author + '''
;
}
} 


