抖音资讯

douyinzx

arraylist删除元素的方法(arraylist集合删除对象)

iseeyu2年前 (2024-05-07)抖音资讯152

平时最常用的莫过于ArrayList和HashMap了,面试的时候也是问答的常客。先不去管容量、负载因子什么的,就是简单的使用也会遇到坑。尤其是使用Remove.

经常遇到的一个场景是:遍历list, 然后找到合适条件的给删除掉,比如删除所有的偶数。

@Test
	public void testRemove2(){
	 List<Integer> integers = new ArrayList<>(5);
	 integers.add(1);
	 integers.add(2);
	 integers.add(2);
	 integers.add(4);
	 integers.add(5);
	 for (int i = 0; i < integers.size(); i++) {
	 if (integers.get(i)%2==0){
	 integers.remove(i);
	 }
	 }
	 System.out.println(integers);
	}

看起来好像没问题,加入面试的时候当面问:输出结果是什么?再问真不会报错吗?再问结果是什么?

结果是:

  • 报错
  • 结果是空list
  • 结果是[1, 2, 5]

如果使用foreach是否可以实现刚开始的问题:

@Test
	public void testRemove4(){
		List<Integer> integers = new ArrayList<>(5);
	 integers.add(1);
	 integers.add(2);
	 integers.add(2);
	 integers.add(4);
	 integers.add(5);
	 for (Integer string : integers) {
	 	integers.remove(string);
	 }
	}

结果报错:
java.lang.UnsupportedOperationException

正确的remove做法是:

方法一:

@Test
	public void testRemove9(){
		List<Integer> integers = new ArrayList<>(5);
	 integers.add(1);
	 integers.add(2);
	 integers.add(2);
	 integers.add(4);
	 integers.add(5);
	 Iterator<Integer> iterator = integers.iterator();
	 while (iterator.hasNext()){
	 	Integer next = iterator.next();
	 	if (next%2 == 0){
	 		iterator.remove();
	 	}
	 }
	 System.out.println(integers);
	}

方法二:

@Test
	public void testRemove7(){
		List<Integer> integers = new ArrayList<>(5);
	 integers.add(1);
	 integers.add(2);
	 integers.add(2);
	 integers.add(4);
	 integers.add(5);
	 
	 for(int i= integers.size()-1;i>=0;i--)
	 {
	 	 if (integers.get(i)%2==0){
		 integers.remove(i);
		 }
	 }
	 System.out.println(integers);
	}

 

扫描二维码推送至手机访问。

版权声明:本文由西安泽虎代运营发布,如需转载请注明出处。

转载请注明出处https://www.0291.com.cn/post/42835.html

相关文章

快手广告财务模块资金流水、充值、退款新版操作上线通知

快手广告财务模块资金流水、充值、退款新版操作上线通知

 尊敬的快手广告主,您好! 财务模块已经在竞价广告平台上线!上线页面包括资金流水、充值操作与充值记录、退款操作与退款记录,更新了页面交互和样式,原页面功能和面向全体无变更。 一、增加资金数据看板(所有登陆或附身用户均可见该页面) 二、充值与退款操作入口变更 原入口:与充...

抖音推送规律是什么

抖音推送规律是什么

在抖音上,想要上热门,想让自己的作品火,首先要了解的是抖音的推流机制,抖音推送规律是什么?   一般短视频平台对单个作品进行推荐,会考核以下这些内容:   A. 完播率; B.点赞数; C.评论数; D转发数.; E.账号资料完善度...

抖音里删除的作品怎么恢复回来(抖音误删草稿恢复的办法)

抖音里删除的作品怎么恢复回来(抖音误删草稿恢复的办法)

随着短视频风靡全球,现在每天都有成千上万的视频内容被生产出来,随后它们被视频创作者们上传到抖音、快手或YouTube、tiktok等各种社交平台上。随着视频日益增多,对于视频创作者来说,他们最头疼的事情就是视频素材的管理,例如视频素材受损或删除丢失后是否还能快速找回。...

Google视频广告工作原理

Google视频广告工作原理

关联 YouTube 频道与 Google Ads 帐号 将 YouTube 频道与 Google Ads 帐号关联后,所关联的 Google Ads 帐号就可以根据用户与您频道中视频的互动情况来投放广告。您可以向关联的 Google Ads 帐号授予以下权限:访问视频广告的自然观看指标,向访问频...

手机抖音合拍没有声音怎么回事(把自己的声音加到视频操作流程)

手机抖音合拍没有声音怎么回事(把自己的声音加到视频操作流程)

现在很多人喜欢在抖音上与别人合拍视频,尤其是目前特别火的合唱视频,但是好多人发现在进行合拍的时候是没有自己的声音的,只有原视频的声音,只有用抢镜才可以,但是抢镜之后的布局不好看。 下面小编就来介绍一下,在合拍的时候如何录入自己的声音。 抖音版本V15.1.1 (如果你的版本低于这个版本的...

直播间放什么音乐吸引人(直播间最火的背景音乐)

直播间放什么音乐吸引人(直播间最火的背景音乐)

现在最火的小视频软件非抖音和快手莫属了,抖音日活跃用户1.5亿,快手日活跃用户1.2亿,这么多流量冲击下,连腾讯都瑟瑟发抖。而抖音和快手也吸引了不少游戏主播进驻,作为小视频平台,比起斗鱼这些游戏直播平台,抖音快手可以发短小精悍的小游戏视频可以说是比斗鱼更灵活得多。而游戏主播发视频很喜欢配背景音乐...

现在,非常期待与您的又一次邂逅

我们努力让每一部企业宣传片和抖音短视频成为商业大片