Java中对List集合api展示
目录:
- list中添加,获取,删除元素;
- list中是否包含某个元素;
- list中根据索引将元素数值改变(替换);
- list中查看(判断)元素的索引;
- 根据元素索引位置进行的判断;
- 利用list中索引位置重新生成一个新的list(截取集合);
- 对比两个list中的所有元素;
- 判断list是否为空;
- 返回Iterator集合对象;
- 将集合转换为字符串;
- 将集合转换为数组;
- 集合类型转换;
- 去重复;
备注:内容中代码具有关联性。
1.list中添加,获取,删除元素;
添加方法是:.add(e); 获取方法是:.get(index); 删除方法是:.remove(index); 按照索引删除; .remove(Object o); 按照元素内容删除;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
List<String> person= new ArrayList<>();
person.add( "jackie" ); //索引为0 //.add(e)
person.add( "peter" ); //索引为1
person.add( "annie" ); //索引为2
person.add( "martin" ); //索引为3
person.add( "marry" ); //索引为4
person.remove( 3 ); //.remove(index)
person.remove( "marry" ); //.remove(Object o)
String per= "" ;
per=person.get( 1 );
System.out.println(per); .get(index)
for ( int i = 0 ; i < person.size(); i++) {
System.out.println(person.get(i)); //.get(index)
}
|
2.list中是否包含某个元素;
方法:.contains(Object o); 返回true或者false
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
List<String> fruits= new ArrayList<>();
fruits.add( "苹果" );
fruits.add( "香蕉" );
fruits.add( "桃子" );
//for循环遍历list
for ( int i = 0 ; i < fruits.size(); i++) {
System.out.println(fruits.get(i));
}
String appleString= "苹果" ;
//true or false
System.out.println( "fruits中是否包含苹果:" +fruits.contains(appleString));
if (fruits.contains(appleString)) {
System.out.println( "我喜欢吃苹果" );
} else {
System.out.println( "我不开心" );
}
|
3.list中根据索引将元素数值改变(替换);
注意 .set(index, element); 和 .add(index, element); 的不同;
1
2
3
4
5
6
7
8
9
10
11
12
|
String a= "白龙马" , b= "沙和尚" , c= "八戒" , d= "唐僧" , e= "悟空" ;
List<String> people= new ArrayList<>();
people.add(a);
people.add(b);
people.add(c);
people.set( 0 , d); //.set(index, element); //将d唐僧放到list中索引为0的位置,替换a白龙马
people.add( 1 , e); //.add(index, element); //将e悟空放到list中索引为1的位置,原来位置的b沙和尚后移一位
//增强for循环遍历list
for (String str:people){
System.out.println(str);
}
|
4.list中查看(判断)元素的索引;
注意:.indexOf(); 和 lastIndexOf()的不同;
1
2
3
4
5
6
7
8
9
10
|
List<String> names= new ArrayList<>();
names.add( "刘备" ); //索引为0
names.add( "关羽" ); //索引为1
names.add( "张飞" ); //索引为2
names.add( "刘备" ); //索引为3
names.add( "张飞" ); //索引为4
System.out.println(names.indexOf( "刘备" ));
System.out.println(names.lastIndexOf( "刘备" ));
System.out.println(names.indexOf( "张飞" ));
System.out.println(names.lastIndexOf( "张飞" ));
|
5.根据元素索引位置进行的判断;
1
2
3
4
5
6
7
|
if (names.indexOf( "刘备" )== 0 ) {
System.out.println( "刘备在这里" );
} else if (names.lastIndexOf( "刘备" )== 3 ) {
System.out.println( "刘备在那里" );
} else {
System.out.println( "刘备到底在哪里?" );
}
|
6.利用list中索引位置重新生成一个新的list(截取集合);
方法: .subList(fromIndex, toIndex); .size() ; 该方法得到list中的元素数的和
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
|
List<String> phone= new ArrayList<>();
phone.add( "三星" ); //索引为0
phone.add( "苹果" ); //索引为1
phone.add( "锤子" ); //索引为2
phone.add( "华为" ); //索引为3
phone.add( "小米" ); //索引为4
//原list进行遍历
for (String pho:phone){
System.out.println(pho);
}
//生成新list
phone=phone.subList( 1 , 4 ); //.subList(fromIndex, toIndex) //利用索引1-4的对象重新生成一个list,但是不包含索引为4的元素,4-1=3
for ( int i = 0 ; i < phone.size(); i++) { // phone.size() 该方法得到list中的元素数的和
System.out.println( "新的list包含的元素是" +phone.get(i));
}
|
7.对比两个list中的所有元素;
//两个相等对象的equals方法一定为true, 但两个hashcode相等的对象不一定是相等的对象
1
2
3
4
5
6
7
8
9
10
11
|
//1.<br>if (person.equals(fruits)) {
System.out.println( "两个list中的所有元素相同" );
} else {
System.out.println( "两个list中的所有元素不一样" );
}
//2.
if (person.hashCode()==fruits.hashCode()) {
System.out.println( "我们相同" );
} else {
System.out.println( "我们不一样" );
}
|
8.判断list是否为空;
//空则返回true,非空则返回false
1
2
3
4
5
|
if (person.isEmpty()) {
System.out.println( "空的" );
} else {
System.out.println( "不是空的" );
}
|
9.返回Iterator集合对象;
1
|
System.out.println( "返回Iterator集合对象:" +person.iterator());
|
1+0.将集合转换为字符串;
1
2
3
|
String liString= "" ;
liString=person.toString();
System.out.println( "将集合转换为字符串:" +liString);
|
11.将集合转换为数组;
1
|
System.out.println( "将集合转换为数组:" +person.toArray());
|
12.集合类型转换;
1
2
3
4
5
6
7
8
9
10
|
//1.默认类型
List<Object> listsStrings= new ArrayList<>();
for ( int i = 0 ; i < person.size(); i++) {
listsStrings.add(person.get(i));
}
//2.指定类型
List<StringBuffer> lst= new ArrayList<>();
for (String string:person){
lst.add(StringBuffer(string));
}
|
13.去重复;
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
|
List<String> lst1= new ArrayList<>();
lst1.add( "aa" );
lst1.add( "dd" );
lst1.add( "ss" );
lst1.add( "aa" );
lst1.add( "ss" );
//方法 1.
for ( int i = 0 ; i <lst1.size()- 1 ; i++) {
for ( int j = lst1.size()- 1 ; j >i; j--) {
if (lst1.get(j).equals(lst1.get(i))) {
lst1.remove(j);
}
}
}
System.out.println(lst1);
//方法 2.
List<String> lst2= new ArrayList<>();
for (String s:lst1) {
if (Collections.frequency(lst2, s)< 1 ) {
lst2.add(s);
}
}
System.out.println(lst2);
|
Java中对List集合api展示相关推荐
- java List最大_在java中获取List集合中最大的日期时间操作
取list集合中最大的日期, 可以用date max = collections.max(datelist);, 传入一个日期集合, 就可以获取, 工作中有这个需求, 就查找到这个, 代码如下 } e ...
- Java中如何克隆集合——ArrayList和HashSet深拷贝
2019独角兽企业重金招聘Python工程师标准>>> 编程人员经常误用各个集合类提供的拷贝构造函数作为克隆List,Set,ArrayList,HashSet或者其他集合实现的方法 ...
- java中如何上送list集合_如何使用java中的list集合
如何使用java中的list集合 发布时间:2020-06-26 14:45:11 来源:亿速云 阅读:88 作者:Leah 如何使用java中的list集合?针对这个问题,这篇文章详细介绍了相对应的 ...
- java 集合初始化_6种方法初始化JAVA中的list集合
List 是 Java 开发中经常会使用的集合,你们知道有哪些方式可以初始化一个 List 吗?这其中不缺乏一些坑,今天栈长我给大家一一普及一下. 1.常规方式 List languages = ne ...
- Java中遍历Set集合的三种方法
Map集合:链接: Map集合的五种遍历方式及Treemap方法 Set集合:链接: Java中遍历Set集合的三种方法 TreeSet集合:链接: Java深入了解TreeSet,和迭代器遍历方法 ...
- 【ssl认证、证书】java中的ssl语法API说明(SSLContext)、与keytool 工具的联系
文章目录 1. 前言 java中的ssl语法与keytool 工具的联系 2. SSLContext的体系 2.1 KeyStore 2.1.1 通过证书库文件创建: 2.1.2 随机生成自签名证书库 ...
- Java中遍历Map集合的5种方式总结
这篇文章主要给大家介绍了关于Java中遍历Map集合的5种方式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值. 方式一 通过Map.keySet使用iterator遍历 ...
- JAVA中的Map集合
JAVA中的Map集合 1.Map简介 java.util.map接口 1.Map称为查找表,该数据结构的样子是一个"多行两列"的表格,左列为key,右列为value,Map总是根 ...
- 高薪程序员面试题精讲系列31之你熟悉Java中的哪些集合?
一. 面试题及剖析 1. 今日面试题 Java中的集合你了解吗? 你熟悉Java中的哪些集合? 集合的顶级接口是哪个,集合的具体实现类有哪些? ...... 2. 题目剖析 我们在进行Java开发.代 ...
最新文章
- mpvue开发小程序所遇问题及h5转化方案
- 【Kali渗透全方位实战】Metasploitable2系统介绍
- 如何构建GFS分布式存储平台?理论+实操!
- 火焰和烟雾的训练图像数据集_游戏开发者是烟雾和镜子的大师
- 海量数据处理 (一)
- 技术动态 | 知识图谱的策展
- Iptables详解+实例
- 转: android编译过程(流程图)
- ArrayList详细
- MSSQL数据库的一些长度限制
- PHP数据处理:合并数据、详情数据
- 教大家如何下载百度文库文档
- 学士后java单元项目答案_北大青鸟学士后java工程师第二单元项目源代码
- VS2008 SP1 安装卡在 VS90sp1-KB945140-X86-CHS的解决方法
- 数理逻辑习题集(9)
- mysql热备份使用方案_MySQL双机热备份实施方案
- CTF比赛必备常用工具
- MySQL数据库存储的字符显示是问号??
- 一年半的外包程序员心得体会
- Android数据存储安全实践
热门文章
- Eclipse怎么全局搜索替换(整个项目)
- IE8中伪元素动态作用样式不重绘bug记录
- 10-11-根据文章标题搜索文章
- php 交换函数,php用于反转/交换数组中的键名和对应关联的键值的函数array_flip()...
- 服务器虚拟化 实验,VMware vSphere服务器虚拟化实验三 安装vCenter Server
- plc有与计算机的通讯请求时,OMRON PLC网络Ethernet网_OMRON PLC与上位计算机之间的通信_OMRON PLC与上位计算机通信程序-维库电子通...
- unity android适配,unity实战 手机屏幕适配
- mysql一个事务多个log_MySQL的两阶段事务提交是否先写binlog再写redolog也可行?
- 另存为里面没有jpg_CAD图不会转JPG?教你两个方法,从此CAD格式转换不再烦恼
- 移动端的注册登录设计灵感!