JAVA LIST需要移除其中某一元素,这里简单的列出几个可行方法
1、利用迭代器移除,参考代码如下:
复制代码
1
2
3
4
5
6
7
8
9
10
11String token="3",tokens="1,2,3,4"; List<String> tokenList= MyStrUtils.strToStrList(tokens); Iterator<String> iterator = tokenList.iterator(); while(iterator.hasNext()) { String next = iterator.next(); if (next.equals(token)) { iterator.remove(); } } log.info("SIZE:{}",tokenList.size()); log.info("NEWTOKENS:{}",MyStrUtils.join(tokenList,","));
2、FOR遍历INDEX递减移除,参考代码如下:
复制代码
1
2
3
4
5
6
7
8
9String token="3",tokens="1,2,3,4"; List<String> tokenList= MyStrUtils.strToStrList(tokens); for(int i=tokenList.size()-1;i>=0;i--){ if(tokenList.get(i).equals(token)){ tokenList.remove(i); } } log.info("SIZE:{}",tokenList.size()); log.info("NEWTOKENS:{}",MyStrUtils.join(tokenList,","));
3、FOR遍历INDEX递增移除,参考代码如下:
复制代码
1
2
3
4
5
6
7
8
9
10String token="3",tokens="1,2,3,4"; List<String> tokenList= MyStrUtils.strToStrList(tokens); for(int i=0;i<tokenList.size();i++){ if(tokenList.get(i).equals(token)){ tokenList.remove(i); i--; } } log.info("SIZE:{}",tokenList.size()); log.info("NEWTOKENS:{}",MyStrUtils.join(tokenList,","));
4、利用stream流过滤,参考代码如下:
复制代码
1
2
3
4
5String token="3",tokens="1,2,3,4"; List<String> tokenList= MyStrUtils.strToStrList(tokens); List<String> tokenList_new=tokenList.stream().filter(item -> !item.equals(token)).collect(toList()); log.info("SIZE:{}",tokenList_new.size()); log.info("NEWTOKENS:{}",MyStrUtils.join(tokenList_new,","));
四种方法运行的结果均如下:
ARRAY中移除某一元素和LIST又不同,你需要将后面所有的元素提前以达到原地移除符合元素的目的,参考代码如下:(暂时未完成)
最后
以上就是雪白猫咪最近收集整理的关于JAVA LIST、ARRAY 移除其中某一元素的全部内容,更多相关JAVA内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复