当前位置: 首页 > news >正文

250214-java类集框架

单列集合是list和set,list的实现类有ArrayList和LinkedList,前者是数组实现,后者是链表实现。list和set,前者有序、可重复,后者无序不可重复。

1.单列集合

1.1. list

java.util.List接口继承自Collection接口,它的实现类包括ArrayList、LinkedList、Vector等

list接口的方法比如下面:

实例如下:

import java.util.ArrayList;
import java.util.List;
public class ListDemo
{
	public static void main(String[] args)
	{
		List<Integer> a=new ArrayList<Integer>();
		System.out.println("在集合尾部添加指定元素");
		a.add(1);
		a.add(2);
		System.out.println(a);
	}
} 
//输出结果:在集合尾部添加指定元素
//[1, 2]

 见第七行的List<Integer> a=new ArrayList<Integer>();这其实是子类的向上转型,当然也可以不用转型,直接ArrayList<Integer> a=new ArrayList<Integer>()这样,都可以。前者呢,优点是变量a可以引用任何list实现类的对象,比如LinkedList、Vector的对象,而不需要修改变量声明的类型,例如

a = new LinkedList<Integer>();

 后者呢,变量a不仅可以调用父类的方法,还可以调用子类独有的方法。

明白了list接口的使用,那么list的实现类ArrayList、LinkedList、Vector等也差不多会用了。

1.2. set

java.util.Set接口同样继承自Collection接口,Set接口不同于List接口,它是抽象接口;它的实现类包括java.util.HashSet和java.util.LinkedHashSet等。

import java.util.HashSet;
public class SetDemo
{
	public static void main(String[] args)
	{
		HashSet<Integer> a=new HashSet<Integer>();
		a.add(12);
		a.add(12);
		a.add(34);
		System.out.print(a);
	}
}
//输出结果:[34, 12]

输入两个12,但是最终集合里只有一个12,说明自动过滤掉重复元素。 

2.双列集合

map(映射)

java.util.Map,Map不同于List接口,它也是抽象接口;map接口的对象是键值对、关键字和值都是对象,关键字是唯一的,可以存相同的值,如果反复插入关键字,则新的替换旧的;

map的接口方法:

  • put(K key, V value):添加键值对。

  • get(Object key):通过键获取值。

  • remove(Object key):删除指定键的键值对。

  • containsKey(Object key):判断是否包含某键。

  • keySet():返回所有键的集合(Set<K>)。

  • values():返回所有值的集合(Collection<V>)。

  • entrySet():返回所有键值对的集合(Set<Entry<K, V>>)。

import java.util.Map;
import java.util.HashMap;
public class MapDemo
{
	public static void main(String[] args)
	{
		Map<String,Integer> a=new HashMap<>();
		a.put("小明",12);
		System.out.print(a);
	}
}
//输出结果:{小明=12}

 

 


文章转载自:
http://behest.zzyjnl.cn
http://accidentalist.zzyjnl.cn
http://breechclout.zzyjnl.cn
http://bessarabian.zzyjnl.cn
http://catonian.zzyjnl.cn
http://blather.zzyjnl.cn
http://advocatory.zzyjnl.cn
http://cheerleader.zzyjnl.cn
http://carbine.zzyjnl.cn
http://apprentice.zzyjnl.cn
http://aymaran.zzyjnl.cn
http://barococo.zzyjnl.cn
http://acoustician.zzyjnl.cn
http://brahman.zzyjnl.cn
http://apache.zzyjnl.cn
http://aberdevine.zzyjnl.cn
http://aussie.zzyjnl.cn
http://axil.zzyjnl.cn
http://caseworm.zzyjnl.cn
http://bodleian.zzyjnl.cn
http://candidiasis.zzyjnl.cn
http://applewife.zzyjnl.cn
http://anaculture.zzyjnl.cn
http://abaya.zzyjnl.cn
http://aerobus.zzyjnl.cn
http://chemicophysical.zzyjnl.cn
http://anapest.zzyjnl.cn
http://ashes.zzyjnl.cn
http://ballyrag.zzyjnl.cn
http://azotemia.zzyjnl.cn
http://www.dtcms.com/a/19915.html

相关文章:

  • springboot项目读取 resources 目录下的文件的9种方式
  • 【CubeMX-HAL库】STM32F407—无刷电机学习笔记
  • openAI最新o1模型 推理能力上表现出色 准确性方面提升 API如何接入?
  • vscode ESP32配置
  • 苍穹外卖项目demo开发day3 公共字段自动填充 增删改查菜品
  • 使用llama.cpp在gpu和cpu上运行deepseek-r1 7b的性能对比
  • 计算机组成原理—— 总线系统(十二)
  • pytest测试专题 - 2.1 一种推荐的测试目录结构
  • 编程速递-庆祝Delphi诞生30周年!
  • 2025智能硬件售后服务管理系统选择的六大标准
  • 小项目第一天
  • CAS单点登录(第7版)20.用户界面
  • Centos安装php-8.0.24.tar
  • unity学习41:动画里的曲线curve参数 和 事件 events
  • CAS单点登录(第7版)17.账户注册
  • 深度学习框架探秘|TensorFlow:AI 世界的万能钥匙
  • 安科瑞光伏发电防逆流解决方案——守护电网安全,提升能源效率
  • 算法随笔_51: 表现良好的最长时间段_方法2
  • Java三大特性
  • Uniapp 短视频去水印解析工具开发实现
  • Ubuntu添加桌面快捷方式
  • 2025有哪些关键词优化工具好用
  • XML Schema anyAttribute 元素详解
  • 算法12-贪心算法
  • 解析浏览器中JavaScript与Native交互原理:以WebGPU为例
  • 应用层优秀的共享民宿物联网框架该怎么选?
  • Spring篇--AOP
  • 前端可以不用依赖后端实现导出大数据了
  • C#学习之数据转换
  • python defaultdict用法