【蓝桥杯Java_C组·从零开始卷】第八节、集合——list详解
【摘要】
由于咱们针对与算法使用,所有会有一些个函数可能平时用不到。
目录
list基础增 删 改 查
算法中最常用的交换
自然排序
反向排序·注不是倒序,不是倒序,不是倒序
随机排序
判断是否有某元素
集合截取
加强for循环foreach遍历列表
咱们挨个看看啊,先看
list基础增 删 改 查
add增加
...
由于咱们针对与算法使用,所有会有一些个函数可能平时用不到。
目录
咱们挨个看看啊,先看
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】的【增删查】效率,以后你就能知道具体在什么时候用那个列表了。
文章来源: laoshifu.blog.csdn.net,作者:红目香薰,版权归原作者所有,如需转载,请联系作者。
原文链接:laoshifu.blog.csdn.net/article/details/122801395
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)