java-collections容器

博客主要围绕Java中List接口展开。介绍了Collection接口下的List、Queue、Set三个子接口,重点讲解List接口的实现类,如类似可变长数组的ArrayList、双向链表的LinkedList,还提及Set集合特点。同时说明了使用这些类时需添加的导入语句及常见使用方法。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先上我的结论:这个东西我觉得很重要,比多线程还是好理解一些。也是我目前学java里面感觉以后会用到(多线程真的生涩难懂,原谅我的菜)。
上一张网上的图,十分感谢,我觉得图片比文字更加的好理解。
在这里插入图片描述

这是从网上搜到的一张图,很重要。
先看看看Collection的原码
在这里插入图片描述

  1. Collection是一个接口,接口,接口
  2. 它下面有三个接口List,Queue,Set。他们还是接口,接口,接口

下图就时是List接口在这里插入图片描述

为什么一直强调接口呢,我也不知道,反正我之前不知道。

List接口的实现类

  1. ArrayList- 十分像可变长数组。特点就是有下标,也就有顺序,元素可以重复遍历比较容易。
  2. LinkedList-链表。Java中是双向链表,添加删除比较容易。
  3. Set-集合,特点就是无序,无下标,元素无重复。

常见使用方法

使用ArrayList,需要在头部添加上import java.util.ArrayList;


ArrayList<Integer> arraylist = new ArrayList<Integer>(); //指定为Intteger类型的ArrayList

//增,采用对象.add(加的值,应该来说是对象,这里不是基本数据类型)
arraylist.add(123);
arraylist.add(456);
arraylist.add(789);

//删,采用对象.remove(下标)
arraylist.remove(1);

//查找
Integer num = arraylist.get(1); //对象.get(下标)得到值
System.out.println(num);

//遍历
//方法1:通过下标来

for( int i = 0 ; i < arraylist.size() ; i++ ) {//arraylist.size()是返回元素的个数。
			System.out.println(arraylist.get(i));
		}
//方法2:foreach只能遍历整个列表,就不用下标了
for(Integer res : arraylist) { //返回类型 对象名 : 遍历的对象
			System.out.println(res);
		}

使用LinkedList,需要在头部添加上import java.util.LinkedList;
其他用法和ArrayList一样,就是使用链表保存得到

LinkedList<Integer> linkedlist = new LinkedList<Integer>();

//增,采用对象.add(加的值,应该来说是对象,这里不是基本数据类型)
linkedlist.add(123);
linkedlist.add(456);
linkedlist.add(789);

//删,采用对象.remove(下标)
linkedlist.remove(1);

//查找
Integer num = linkedlist.get(1); //对象.get(下标)得到值
System.out.println(num);

//遍历
//方法1:通过下标来

for( int i = 0 ; i < linkedlist.size() ; i++ ) {//arraylist.size()是返回元素的个数。
			System.out.println(linkedlist.get(i));
		}
//方法2:foreach只能遍历整个列表,就不用下标了
for(Integer res : linkedlist) { //返回类型 对象名 : 遍历的对象
			System.out.println(res);
		}

使用HashSet:需要在头部添加上import java.util.HashSet;

HashSet<String> hashset = new HashSet<String>();
//添加
		hashset.add("one");
		hashset.add("two");
		hashset.add("three");
		hashset.add("four");
		hashset.add("five");
		hashset.add("six");
		hashset.add("one");
		hashset.add("one");
		hashset.add("one");
//输出看看
		System.out.println(hashset);
//删除
		hashset.remove("one");
//输出看看
		System.out.println(hashset);
		
//遍历输出,没有下标,使用foreach遍历也可以使用iteraor
		//foreach循环
		for( String str : hashset) {
			System.out.println(str);
		}
		//iteraor迭代器,效果和foreach效果是一样的
		Iterator<String> iterator = hashset.iterator();
		while( iterator.hasNext()) {
			System.out.println(iterator.next());
		}

在这里插入图片描述
set里面是无序,无下标的,不能重复。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值