博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
《Java从入门到放弃》JavaSE入门篇:集合
阅读量:5168 次
发布时间:2019-06-13

本文共 1853 字,大约阅读时间需要 6 分钟。

今天来讲讲Java中的集合和常见集合类型的使用。

什么是集合呢?

刚好最近学校里面军训,只听到教官一声喊:“集合!!!”各位小萌新们就屁颠屁颠的跑过来排列整齐了,这就是集合···

 

Java中的集合也是一样的意思,Java一声喊:“集合!!!”,那么我们就把需要放在一起的数据放到一个集合中。有的人会说“数组不就有这个功能么”。是的,数组是有这个功能,但集合与数组相比,功能会更多些,而且不同的集合侧重点不一样,具体有哪些优势,我们接下来讲解。

集合与数组最大的区别:集合的长度是不固定的,可以任意添加或删除元素,而数组的长度是固定的,超过了放不进去数据,删除了数据但位置还在。

 

Java当中的集合提供了一系列的接口和类,都在java.util包中:


一、Collection接口中的通用方法如下:

    Collection接口下又分为List接口和Set接口,它们的区别如下:

    List接口:存储有序,可以保存重复元素

    Set接口: 存储无序,不能保存重复元素

 

List的用法:

    list最常用的子类——ArrayList。

1
2
3
4
5
6
7
8
9
10
11
12
13
public 
static 
void 
main(String[] args) {
    
List list = 
new 
ArrayList();
    
list.add(
"111"
);
    
list.add(
"aaa"
);
    
list.add(
"222"
);
    
list.add(
"bbb"
);
    
list.add(
"555"
);
    
list.add(
"abc"
);
     
    
for 
(
int 
i = 
0
; i < list.size(); i++) {
        
System.out.println(list.get(i));
    
}
}

Set的用法:

    Set最常用的子类——HashSet。

1
2
3
4
5
6
7
8
9
10
11
12
13
public 
static 
void 
main(String[] args) {
    
Set list = 
new 
HashSet();
    
list.add(
"111"
);
    
list.add(
"aaa"
);
    
list.add(
"222"
);
    
list.add(
"bbb"
);
    
list.add(
"555"
);
    
list.add(
"abc"
);
     
    
for 
(Object object : list) {
        
System.out.println(object);
    
}
}

List因为是有序的,所以有对应的get方法根据下标读取数据,而Set是无序的,所以只能遍历来得到数据。下图左边为List的遍历结果,右边为Set的遍历结果。

    

至于删除数据和添加相同数据,各位看官就自己测试一下吧,没什么好讲的了。

 


二、Map接口中的通用方法如下:

 

    Map下面最常用的子类有HashMap和Hashtable。

    Map集合是采用键值对的形式来保存数据的,所以很明显,它也没有顺序,这个东西和我们生活中使用的字典类似(根据拼音或部首去查对应的字)。

    HashMap和Hashtable的区别:HashMap允许出现空键或空值。而Hashtable则相反。

1
2
3
4
5
6
7
8
9
10
11
public 
static 
void 
main(String[] args) {
    
Map map = 
new 
HashMap();
    
map.put(
"wang"
"王九蛋"
);
    
map.put(
"yang"
"杨羊洋"
);
    
map.put(
"li"
null
);
    
map.put(
null
"钱列先"
);
     
    
for 
(Object key : map.keySet()) {
        
System.out.println(key+
":"
+map.get(key));
    
}
}

运行结果:

 

使用Hashtable效果:


实现开发中,大部分场合我们都使用的泛型集合,它与普通集合相比,其优点是在保存数据之前就要指定数据的类型,否则就不允许你放进去!!!

 

OK,今天的集合入门就讲到这儿,小伙们可以把上一篇布置的任务使用本篇的集合来实现看看(不再使用数组)。具体集合怎么用,等后面那个综合练习中再来仔细分析。

   

不努力一把,你怎么知道自己有多么废呢,啊哈哈哈哈!

转载于:https://www.cnblogs.com/xlcker/p/7514509.html

你可能感兴趣的文章
CodeIgniter学习笔记(四)——CI超级对象中的load装载器
查看>>
.NET CLR基本术语
查看>>
ubuntu的home目录下,Desktop等目录消失不见
查看>>
建立,查询二叉树 hdu 5444
查看>>
[Spring框架]Spring 事务管理基础入门总结.
查看>>
2017.3.24上午
查看>>
Python-常用模块及简单的案列
查看>>
LeetCode 159. Longest Substring with At Most Two Distinct Characters
查看>>
基本算法概论
查看>>
jquery动态移除/增加onclick属性详解
查看>>
JavaScript---Promise
查看>>
暖暖的感动
查看>>
Java中的日期和时间
查看>>
Django基于admin的stark组件创建(一)
查看>>
抛弃IIS,利用FastCGI让Asp.net与Nginx在一起
查看>>
C. Tanya and Toys_模拟
查看>>
springboot jar包运行中获取资源文件
查看>>
基于FPGA实现的高速串行交换模块实现方法研究
查看>>
Java Scala获取所有注解的类信息
查看>>
delphi ,安装插件
查看>>