咱们挨个看看啊,先看
list基础增 删 改 查
add增加
remove删除
set修改
get查询
package Action; import java.util.ArrayList; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); System.out.println("集合元素有:"+arrayList); //删除·根据下标删除 arrayList.remove(3); System.out.println("集合元素删除下标3后:"+arrayList); //修改 arrayList.set(2, 777); System.out.println("集合元素修改下标2为777后:"+arrayList); //查询 Integer index2 = arrayList.get(2); System.out.println("下标是2的值是:"+index2); } }
算法中最常用的交换
Collections.swap(list,2,3);//目的是将变量名为list的列表下标为2和3位置上的值进行交换
package Action; import java.util.ArrayList; import java.util.Collections; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); System.out.println("交换前元素顺序:"+arrayList); Collections.swap(arrayList, 1, 5); System.out.println("交换后元素顺序:"+arrayList); } }
效果:
自然排序
Collections.sort(list); package Action; import java.util.ArrayList; import java.util.Collections; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(555); arrayList.add(666); arrayList.add(111); arrayList.add(333); arrayList.add(222); arrayList.add(444); System.out.println("排序前元素顺序:"+arrayList); Collections.sort(arrayList); System.out.println("排序后元素顺序:"+arrayList); } }
反向排序·注不是倒序,不是倒序,不是倒序
package Action; import java.util.ArrayList; import java.util.Collections; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(555); arrayList.add(666); arrayList.add(111); arrayList.add(333); arrayList.add(222); arrayList.add(444); System.out.println("反向排序前元素顺序:"+arrayList); Collections.reverse(arrayList); System.out.println("反向排序后元素顺序:"+arrayList); } }
随机排序
package Action; import java.util.ArrayList; import java.util.Collections; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); System.out.println("随机排序前元素顺序:"+arrayList); Collections.shuffle(arrayList);//随机排序·适合洗牌 System.out.println("随机排序后元素顺序:"+arrayList); } }
效果
判断是否有某元素
package Action; import java.util.ArrayList; import java.util.Collections; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); System.out.println("集合元素表:"+arrayList); //判断是否存在某值 int info=666; boolean contains = arrayList.contains(info); System.out.println((contains?"有":"没有")+info+"元素"); } }
效果
集合截取
package Action; import java.util.ArrayList; import java.util.Collections; import java.util.List; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); System.out.println("原集合元素列表:"+arrayList); //截取后增加某元素 List<Integer> subList = arrayList.subList(2, 4); subList.add(250); System.out.println("截取的元素列表:"+subList); //被动的在小标为4的位置上增加了一个250的值 System.out.println("原集合元素列表:"+arrayList); } }
效果
加强for循环foreach遍历列表
package Action; import java.util.ArrayList; public class demo { public static void main(String[] args) { ArrayList<Integer> arrayList = new ArrayList<Integer>(); //增加 arrayList.add(111); arrayList.add(222); arrayList.add(333); arrayList.add(444); arrayList.add(555); arrayList.add(666); //foreach遍历 for (Integer i : arrayList) { System.out.println(i); } } }
效果
用的最多的就是【ArrayList】所以针对它进行一个使用详情的演示操作,【LinkedList】操作都是类似的。下篇文章我会对照的比较一下【ArrayList】与【LinkedList】的【增删查】效率,以后你就能知道具体在什么时候用那个列表了。