
正文
Java——List:list.add(index, element)和list.set(index, element)的区别
提示:扫一扫查出行【扫一扫了解最新限行尾号】
复制提示
add(index, element)
- 含义:在集合索引为index的位置上增加一个元素element,集合list改变后list.size()会增加1
- 用法
- testList.add(index, element);
set(index, element)
- 含义:在集合索引为index的位置上改变一个元素,改变后的元素为element,集合list改变后list.size()不变
- 用法
- testList.set(index, element);
- Integer set = testList.set(index, element);
- 返回值:原list集合中,索引为index的元素。
使用条件
- 不符合条件会报错
- add(index, element)
- list != null
- index需要小于等于list.size()
- set(index, element)
- list != null && list.size() !=0
- index需要小于list.size()
例子
- 一:add(index, element)和set(index, element)插入集合对比
- 代码
public class TestList { private static List<Integer> testList; public static void main(String[] args) { initList();//初始化list
System.out.println("initList="+testList.toString());
System.out.println("initList.size="+testList.size());
addList();//add list
System.out.println("addList="+testList.toString());
System.out.println("addList.size="+testList.size()); System.out.println("##############################"); initList();//初始化list
System.out.println("initList="+testList.toString());
System.out.println("initList.size="+testList.size());
setList();//set list
System.out.println("setList="+testList.toString());
System.out.println("setList.size="+testList.size());
} /**
* 初始化list
*/
private static void initList(){
testList = new ArrayList<Integer>();
testList.add(1);
testList.add(2);
testList.add(3);
testList.add(4);
} /**
* add list
*/
private static void addList(){
testList.add(2, 20);
} /**
* set list
*/
private static void setList(){
testList.set(2, 20);
}
} - 执行结果
initList=[1, 2, 3, 4]
initList.size=4
addList=[1, 2, 20, 3, 4]
addList.size=5
##############################
initList=[1, 2, 3, 4]
initList.size=4
setList=[1, 2, 20, 4]
setList.size=4
- 代码
- 二:set(index, element)返回值对比
- 代码
public class TestListTwo { private static List<Integer> testList; public static void main(String[] args) { initList();//初始化list
System.out.println("initList="+testList.toString()); Integer retValue = setList();//set list System.out.println("setList="+testList.toString());
System.out.println("setList的返回值="+retValue);
} /**
* 初始化list
*/
private static void initList(){
testList = new ArrayList<Integer>();
testList.add(1);
testList.add(2);
testList.add(3);
testList.add(4);
} /**
* set list
*/
private static Integer setList(){
Integer retValue = testList.set(2, 20);
return retValue;
}
} - 执行结果
initList=[1, 2, 3, 4]
setList=[1, 2, 20, 4]
setList的返回值=3
- 代码
- Next







