java中集合
一. List集合: 一次只存储一个元素
1.常用的list集合是ArrayList
(1)在创建这个集合的对象时, 需要指定这个集合存储的数据类型! 否则这个集合的数据是不安全的。
(2)与数组的区别:
①数组的长度是固定的, 集合的长度是可变的。
②数组可以存储基本类型和引用数据类型的数据.集合不可以存储基本数据类型, 只能存储引用数据类型。
2.基本数据类型的包装类
(1)byte ---> Byte
(2)short ---> Short
(3)int ---> Integer
(4)long ---> Long
(5)float ---> Float
(6)double ---> Double
(7)char ---> Character
(8)boolean ---> Boolean
3.如果集合中需要存储基本类型的数据, 集合的类型必须指定为对应的包装类型。
4.list集合中的常用方法 (E:element元素)
(1)add(E): 往集合中添加一个元素
(2)add(index,E): 把元素添加到指定的位置, 原来的内元素会被挤到后面
(3)get(index): 通过索引获取集合中对应的元素
(4)size(): 获取集合的大小、集合中元素个数
(5)remove(index): 删除指定索引的元素, 返回被删除的元素
(6)remove(Object): 删除集合中的指定对象, 如果有多个相同的对象, 只会删除第一个.
(7)contains(E): 判断集合中是否包含指定的元素
(8)indexOf(E): 获取元素在集合中第一次出现的索引
(9)lastIndexOf(E): 获取元素在集合中最后一次出现的索引
(10)isEmpty(): 判断集合中的元素是否为空
(11)set(index,E): 把指定索引位置的元素覆盖, 返回的是被修改的元素
(12)clear(): 清空集合中的所有元素
(13)toArray(): 把集合转换成Object数组,注意不能转换成其他数组!
5.包装类型与基本类型
(1)包装类型对象的创建: 例如: Integer i= new Integer(10); Integer i = newInteger(“100”)
(2)将基本数据类型的数据直接赋值给包装类型: Integer i = 10;
(3)基本类型和包装类型可以直接互相转换。
6.把一个字符串整数转换成整数类型的方式:
(1)通过Integer的构造方法转换: Integer i = new Integer(“100”)
(2)通过Integer的静态方法parseInt来转换
(3)通过Integer的静态方法valueOf来转换
7.总结:
(1)基本上, 所有的包装类型都有把字符串内容转换成对应基本数据类型的方式
①例如, 使用Integer类把一个字符串”100”转换成整数100
②使用Boolean类把一个字符串”true”转换成boolean类型的true
③.....
(2)有一个包装类型是没有把字符串转换成它对应的基本数据类型的方式: Character
二. Map集合: 一次是存储两个元素
1. 常用的Map集合是HashMap
2. Map集合就是可以任意指定索引数据类型的集合, 数组和list集合是固定使用int类型作为索引的容器
3. Map集合的特点:
(1) map集合一次要存储两个元素, 第一个是key(键-索引), 第二个内容是value(值)
(2) map集合的键是不能重复, 如果多次往同一个索引存储元素, 以最后一次存储为准, 后面存储的内容会把前面存储的内容覆盖
(3) map集合中的值是可以重复的
4. 常用方法:
(1) put(key,value): 把键和对应的值存储到集合中
(2) get(key): 根据键取对应的值
(3) isEmpty(): 判断集合是否为空
(4) clear(): 清空集合中的所有元素
(5) containsKey(key): 判断集合中是否包含指定的键
(6) containsValue(value): 判断集合中是否包含指定的值
(7) remove(Object key): 根据键删除键和对应的值
(8) size(): 获取集合中的元素个数
(9) keySet(): 获取到map集合中的所有键, 装到一个Set集合中, 遍历这个集合可以得到每一个键
(10) entrySet(): 把集合中的key和value封装成Entry对象并存储到一个Set集合中,返回该集合
(11) values(): 把集合中所有value存储到一个Collection集合中并返回
5. Set集合
(1) Set集合特点:
① 一次只存一个元素,
② 不能存储重复的元素
③ 存储顺序和取出来的顺序不一定一致
(2) 常用的set集合是HashSet
(3) 常用方法在list中都有,方法比list少, 少的是与索引相关的方法,因为Set集合没有索引。
---------------------
原文:https://blog.csdn.net/Kfie66/article/details/79065100
java中集合的更多相关文章
- Java中集合List,Map和Set的区别
Java中集合List,Map和Set的区别 1.List和Set的父接口是Collection,而Map不是 2.List中的元素是有序的,可以重复的 3.Map是Key-Value映射关系,且Ke ...
- java中集合Collection转list对象
参考:java中集合Collection转list对象 首先我的需求是获取到购物车列表,购物车列表是一个Map对象,构造方法获取购物项,这里购物项是Collection对象 // 购物项集合,K商品I ...
- JAVA中集合转数组遍历
JAVA中集合的遍历的一种方法时集合转数组遍历,也是就调用Collection中的toArray(). 代码: public static void main(String[] args) { ...
- Java中集合List,Map和Set的差别
Java中集合List,Map和Set的差别 1.List和Set的父接口是Collection.而Map不是 2.List中的元素是有序的,能够反复的 3.Map是Key-Value映射关系,且Ke ...
- Java中集合的概述
一.集合和数组的区别 1.数组(可以存储基本数据类型)是用来存现对象的一种容器,但是数组的长度固定,不适合在对象数量未知的情况下使用. 2.集合(只能存储对象,对象类型可以不一样)的长度可变,可在多数 ...
- Scala中集合类型与java中集合类型转换
对于java中的集合元素并不能在scala中拿来就用的,需要进行相应的转换. 1. 转换规则如下 从下面可以看出,有些可以相互转换的,有些只能单向转换: scala.collection.Iterab ...
- Java中集合关键字的区别
1. ArrayList.Vector和Stack有什么区别? 1.ArrayList的方法和实现基本上和Vector一样,底层都是数组的实现(简:API基本一样) 2.Stack继承了Vec ...
- Java中集合概念
集合的由来: 我们学习的是面向对象语言,而面向对象语言对事物的描述是通过对象体现的,为了方便对多个对象进行操作,我们就必须把这多个对象进行储存,而想要储存多个对象,就不能是一个基本的变量,而应该是一个 ...
- JAVA中集合输出的四种方式
在JAVA中Collection输出有四种方式,分别如下: 一) Iterator输出. 该方式适用于Collection的所有子类. public class Hello { public stat ...
- java中集合的扩容
对于Java中的各种集合类,根据底层的具体实现,小结了一下大致有3种扩容的方式: 1.对于以散列表为底层数据结构实现的,(譬如hashset,hashmap,hashtable等),扩容方式为当链表数 ...
随机推荐
- Zabbix 监控 Cisco ASA5525 流量
简介: Zabbix 监控 Cisco ASA5525 网络接口流量 一.Zabbix 支持 SNMP.Cisco 开启 SNMP 二.测试 shell > snmpwalk -v 2c -c ...
- 如何用MaskBlt实现两个位图的合并,从而实现背景透明
我有两个位图,一个前景图,一个背景图(mask用途).请问如何用MaskBlt实现两个位图的合并,从而实现背景透明! 核心代码:dcImage.SetBkColor(crColour);dcMask. ...
- Redis 集群二
[Redis 集群二] 集群的客户端 Redis 集群现阶段的一个问题是客户端实现很少. 以下是一些我知道的实现: redis-rb-cluster 是我(@antirez)编写的 Ruby 实现, ...
- java普通类如何调用Spring的Service层?
首先在Service层上面添加 @Service("myService") 然后,在main方法中调用,String[]中为配置文件,如下所示: ApplicationContex ...
- ArcGIS GP服务的发布及调用
参考https://www.jianshu.com/p/5331fa708fe5
- tomcat 403 forbidden
server.xml和tomcat-users.xml都是设置于过了,还是403,最后发现context.xml中多了一行 <Valve className="org.apache.c ...
- Luogu 4602 [CTSC2018]混合果汁
BZOJ 5343 福利题. 对于每一个询问可以二分$d$,然后把满足条件的果汁按照$p$从小到大排序贪心地取$L$升看看满不满足价格的条件. 那么按照$p$建立权值主席树,$chk$的时候在主席树上 ...
- centos环境下创建数据库和表的方法
centos环境下创建数据库和表的方法 //查询数据库的命令: mysql> SHOW DATABASES; +--------------------+ | Database ...
- gcc中支持的一种字符串表示方式
gcc支持的一种的字符串的表示形式 "xxx" "xxx" "xxx" 他会将这3个字符串连成一个并 且只会在最后的一个字符串末尾添加 '\ ...
- Spring3.x错误----java.lang.ClassNotFoundException:org.aspectj.weaver.reflect.ReflectionWorld$ReflectionWorldException
Spring3.x错误: 解决方法: 缺少aspectjweaver.jar包 下载地址: https://cn.jarfire.org/aspectjweaver.html