集合框架
在java中,集合是由类和接口实现的聚集体,这些类和接口构成了集合框架;或者是由类型实现的聚集体,这些类型扩展了定义于集合框架中的类。
集合框架由下列部分构成:
1)、定义集合的行为的接口(例如,他们定义添加和删除元素的方法)
2)、具体类:他们提供了接口的多种用途的实现,这些接口可以直接使用
3)、抽象类:他们实现集合框架的接口,可以扩展这些集合框架以创建特殊化的数据结构的集合
集合框架的目的如下:
1、通过提供大部分通用数据结构,减少程序员的编程工作
2、提供一套类型,这些类型易于使用、扩展和理解
3、通过定义一套用于实现的标准的集合接口,增加灵活性。因此可以很容易的把一类数据结构转化成另一类数据结构,或者修改集合的实现,而不修改其他类使用它的方式。
4、通过测试软件元件的重用,改进程序质量
主要包含3中类型的集合框架
Set接口(无序的,不可重复的)
Public class SetTest {
Public Static void main (String [] args) {
SetTest test = new SetTest();
Java.util.Collection sSet = test.getUesr(5);
System.out.println ("共有元素"+sSet.size());
//将Set中的所有元素打印取出
//使用迭代器取出元素
java.util.Iterator<String> str = sSet.itrrator();
//遍历
While(str.hasNext()) {
String st = it.next ();
System.out.println (st);
}
}
Public java.util.Collection getUserSet (int t) {
Set st = new java.util.HashSet();
For(int i = 0; i < t; i++) {
String str = new String ("元素" + i);
St.add(Str);
}
Return st;
}
}
List接口(有序的,可重复的)
Map接口(一一对应的映射关系)<K,V>
K 称之为键 V 称之为值 他们在Map中是一一对应的,这一对对象称之为一个Entry, 其中键不能重复,但值可以重复。
下面是2道例题
/**
* 给定1个数组,去重复并排序
*/
public class Test {
public static void main (String[] args) {
Test ts = new Test();
int[]st = ts.sort();
ts.stest(st);
}
//给定数去除重复
public int[] sort() {
//定义一个数组并赋值
int[] rit = new int[9];
int[] it = {1,1,1,2,2,3,3,4,4,5,6,7,7,7,8,8,9,9};
java.util.HashSet<Integer> itgr = new java.util.HashSet<Integer>();
for(int i = 0; i < it.length; i++) {
itgr.add(it[i]);
}
//得到itgr的迭代器
java.util.Iterator<Integer> ita = itgr.iterator();
//遍历itgr
while (ita.hasNext()) {
for (int j = 0; j < rit.length; j++) {
rit[j] = ita.next();
}
}
return rit;
}
//排序
public void stest(int[] it) {
for (int i = 0; i < 9; i++) {
for (int j = i+1; j < 9 ; j++) {
if (it[i] > it[j]) {
int temp = it[i];
it[i] = it[j];
it[j] = temp;
}
}
System.out.print(it[i]);
}
}
}
/**
* 给定数组 找出每个元素出现次数并记录
* @author jsyczynba
*
*/
public class Test2 {
public static void main (String [] args) {
Test2 t2 = new Test2();
System.out.println(t2.count());
}
public HashMap<Integer, Integer> count() {
int[] it = {1,1,1,2,2,3,3,4,4,5,6,7,7,7,8,8,9,9};
java.util.HashMap<Integer, Integer> map = new java.util.HashMap<Integer, Integer>();
for(int i = 0; i < it.length; i++) {
if(map.containsKey(it[i])) {
int value = map.get(it[i]);
map.put(it[i], ++value);
} else {
map.put(it[i], 1);
}
}
return map;
}
}
分享到:
相关推荐
xmind格式的Java集合框架学习导图,包括Collection接口/Map接口以及具体实现类。 同样包含大厂面试题,也在导图中有所体现。 能学到什么: 更加成体系的知识框架,更加全面的、系统的知识。 思维导图: 思维导图具有...
Java集合框架是Java编程语言中的一个核心组成部分,它为存储、管理和操作对象提供了一套统一的接口和类。本文将深入解析Java集合框架的各个方面,包括Collection、List、Set和Map,以及它们的相关实现和使用原理。 ...
### Java集合框架总结 #### 一、Java集合框架概述 Java集合框架是Java标准库的一部分,它提供了一系列的接口和类来存储和操作各种类型的对象集合。这些接口和类遵循一致的设计模式,使得开发人员可以方便地管理和...
### Java集合框架详解 #### 一、Java集合框架概述 Java集合框架是Java标准库的重要组成部分,它提供了存储和操作对象的各种数据结构。通过使用集合框架,开发人员可以轻松地管理不同类型的数据集,并且能够利用...
Java集合框架是Java编程语言中一个至关重要的组成部分,它提供了数据结构和算法的抽象,使得开发者可以方便地存储和管理各种类型的数据。本篇将详细探讨Java集合框架的基础知识,包括核心接口、类的层级结构以及Java...
集合是将多个元素组成一个单元的...Java集合框架,为我们提供了一套性能优良、使用方便的接口和类,我们不必再重新发明轮子,只需学会如何使用它们,就可以处理实际应用中出现的问题了Java集合框架位于java.util包中
Java集合框架是Java编程语言中的核心部分,它提供了一组高效、灵活的数据结构,使得开发者可以方便地存储和管理各种类型的数据。Java集合框架主要包括两大类:Collection和Map。 Collection接口是所有单值容器的父...
本文档为本人学习 java 集合框架期间的学习总结笔记,希望对新学习的朋友有所帮助和参考价值。本人java 开发时间不是太长,可能存在不完善或不对之处,欢迎指正!
6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6.java集合框架.zip6....
JAVA学习 Java集合框架.ppt
面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣逆袭 Java 集合框架篇.pdf面渣...
根据提供的信息,我们可以总结并详细解释关于Java集合框架的一些关键知识点。这些知识点主要涉及Java集合框架中的各种数据结构,如List、Set、Map等,并深入探讨了它们在实际应用中的特性与用途。 ### Java集合框架...
《数据结构和Java集合框架》是清华大学出版社出版的一本经典教材,主要涵盖了计算机科学中的核心概念——数据结构以及Java编程语言中的集合框架。这本书通过深入浅出的方式,讲解了如何用Java实现各种常用的数据结构...
一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合框架练习 一个扑克游戏,用于Java集合框架练习一个扑克游戏,用于Java集合...
Java集合框架是Java编程语言中一个至关重要的组成部分,它为数据存储和操作提供了丰富的类库。泛型是Java 5引入的一项创新特性,极大地增强了集合框架的安全性和效率。本讲解将深入探讨这两个主题,以及与之相关的...
List set ArraryList Map java集合框架笔记 基于Array的List,其实就是封装了Array所不具备的一些功能方便我们使用