代码阅读题-subList()
public static void main(String[] args) { List<String> allElements = List.of("a","b","c","d","e","f"); List<String> allList = new ArrayList<>(allElements); List<String> subList=allList.subList(1,3); System.out.println(subList); subList.set(0,"sub"); subList.set(1,"ssst"); System.out.println(subList); System.out.println(allList); }
输出是:
[b, c] [sub, ssst] [a, sub, ssst, d, e, f]
也就是说这里相当于取了原数组的一部分,并且对截取部分的修改会影响到原部分
subList()
方法,参数分别为
- 截取元素的起始位置,包含
- 截取元素的结束位置,不包含
那么这里跟List.of()
有没有关系?没有,这只是初始化数组元素的一种方法
如果想要不影响原数组,需要这么做:
List<String> newList = new ArrayList<>(allList.subList(1,3)); newList.set(0,"newString"); System.out.println(allList);
本文作者:YaosGHC
本文链接:https://www.cnblogs.com/yaocy/p/16727964.html
版权声明:本作品采用知识共享署名-非商业性使用-禁止演绎 2.5 中国大陆许可协议进行许可。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步