Java中对List集合的常用操作
来源:互联网 发布:公安局网络通缉人员 编辑:程序博客网 时间:2024/06/07 02:57
目录:
- 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);
阅读全文
0 0
- Java中对List集合的常用操作
- Java中对List集合的常用操作
- java中对List集合的常用操作
- Java中对List集合的常用操作
- Java中对List集合的常用操作
- java中对集合List的操作
- 对Java中常用集合的操作
- 在JAVA中,对List集合的加减操作
- 在JAVA中,对List集合的加减操作
- Java对List的常用操作
- Java中对Array数组的常用操作,交集并集合集!
- Java中对list集合进行排序
- java 对list的操作
- 对java中常用的集合几点看法
- java常用的集合操作
- C#中对List集合的理解
- Java中对集合的并,交,联集,差操作
- Java并发集合操作中对锁的应用
- Maven 问题解决
- Json对象和Json字符串的区别,以及Springmvc接受json字符串类型。
- Class.forName()用法详解
- LintCode 83. 落单的数II
- 【Scikit-Learn 中文文档】朴素贝叶斯
- Java中对List集合的常用操作
- 35 个 Java 代码性能优化总结
- Java字符流
- codeforces 778B 拆位运算
- Zabbix 监控TCP
- Android获取APP版本号与版本名的方法.
- leetcode 226. Invert Binary Tree
- iOS开发(Swift)——Swift开发技巧与注意事项
- django 使用中间件 访问request里面的内容