`

JAVA基础 之 集合概述

    博客分类:
  • java
阅读更多

概述:

    1.既然有了数组为什么还需要集合?

       数组长度不可变化,当需要保存数量变化的数据时数组就不太适用了

       不方便表示映射关系(键值对)

    2.java集合分为两大类 Collection和Map,而Collection又分Set和List,这就是我们熟知的java3大集合类 Map、Set、List

    3.Map、Set、List区别简介

       List:有序的,内容可重复的 (长度可变的数组)

       Set:无序的,不可重复的 (一个容器:大筐)

       Map:键值对,键不可重复 (键值对 key-value)

    4.集合不能保存基本数据类型

    5.集合的层级结构图(待续...)

    6.请仔细看程序注释

 

package com.cxy.collection;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;


public class JiHeTest
{
	/** java集合概述
	 */
	public static void main(String[] args)
	{
		//假设幼儿园一班有3个小朋友
		String[] children={"小明","小红","小白"};
		System.out.println("一班有:"+children.length+"个小朋友");
		//现在小黑要进入一班! 没有地方了 因为 幼儿园一班(children数组)只有3个位置
		try
		{
			children[3]="小黑";  //这里会出现数组越界异常,因为数组长度是3,不可变!!
		}catch(Exception e)
		{
			System.out.println("没有位置容下第4个小朋友");
			System.out.println("==================");
		}
		
		//幼儿园一班每个小朋友对应的成绩
		int[] chengji={100,99,98};
		for(int i=0;i<children.length;i++)
		{
			System.out.println(children[i] + "成绩:" + chengji[i]);
		}
		//这样看似好像没什么问题,但是如果数组存储的是大学生信息呢?上万的数据用两个数组对应同序号的数据,难免会出错
		//从上面的例子来看 用两个数组表示映射关系 显然不合适(不直观,易出错)
		System.out.println("==================");
		
		//使用集合解决问题
		List<String> childrenList=new ArrayList<String>();
		childrenList.add("小明");
		childrenList.add("小红");
		childrenList.add("小白");
		childrenList.add("小黑");
		
		for(int i=0;i<childrenList.size();i++)
		{
			System.out.print(childrenList.get(i)+"  ");
		}
		//通过打印可以看出 小黑终于进入了幼儿园一班
		System.out.println("");  //保持打印格式 无实际用处
		System.out.println("==================");
		
		Map<String,Integer> chengjiMap=new HashMap<>(); 
		//注意这里的值是Integer对象,不能是int 因为集合只能是对象不能是基本数据类型。
		chengjiMap.put("小明", 100); //这里之所以能写成基本数据类型是因为他自己封包成Integer对象。
		chengjiMap.put("小红", 99);
		chengjiMap.put("小白", 98);
		//这样就能很清晰的看到成绩表的结构了,下面我们来遍历一下
		for(String one:chengjiMap.keySet())
		{
			System.out.println(one+"成绩:"+chengjiMap.get(one));
		}
		//通过打印结果可以看到map的输出是无序的
	}
}

 

结束语:

    1.本文重点介绍了为什么有数组还需要集合的存在

    2.本文只是概述三大集合特点,并无具体介绍每个集合的用法。(集合需要了解的不仅仅是这三个)

    3.本文涉及到了 数组、异常、泛型、List、Set、Map 如有不懂请关注我博客中相关教程

 

相关文章连接:

1.《JAVA基础 之 Iterator》

2.《JAVA基础 之 Collection》

 

声明:

1.原创文章,转载请标明并加本文连接。

2.更详尽的API请参见  http://docs.oracle.com/javase/7/docs/api/

3.文章反映个人愚见,如有异议欢迎讨论指正 

2
1
分享到:
评论

相关推荐

    java基础之集合

    ### Java基础之集合详解 #### 一、集合简介 ##### 1.1 集合定义 集合在Java中是一种容器,它可以存储任意数量的具有共同属性的对象。这些对象可以是不同类型的数据,如整数、字符串等。 ##### 1.2 集合作用 - **...

    5.java集合概述.zip

    5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5.java集合概述.zip5....

    Java基础面试题集合

    2. **Java集合**: - **集合框架**:包括List、Set、Map三大接口及其实现类,如ArrayList、LinkedList、HashSet、HashMap等。 - **泛型**:提供类型安全,限制集合元素类型,避免强制类型转换。 - **...

    Java集合概述与实例分析

    Java集合框架是Java编程语言中的一个核心特性,它提供了一种高效、灵活的方式来存储和操作对象数组。在Java中,集合被分为两个主要接口:Collection和Map。本篇将深入探讨Collection接口及其子接口,包括List和Set,...

    java集合框架之概述

    Java集合框架是Java编程语言中不可或缺的一部分,它提供了一种高效、灵活的方式来组织和操作数据。集合框架(JCF)的引入极大地提升了Java程序员的工作效率,使得数据结构和算法的使用更加标准化和易于理解。 首先...

    完整版优质java课件 Java基础入门教程 Java编程技术 共14个章节 全套PPT课件资源集合.rar

    Java基础入门教程 Java编程技术01 java概述(2学时)(共27页).ppt Java基础入门教程 Java编程技术02 Java编程基础(4学时)(共55页).ppt Java基础入门教程 Java编程技术03 数组(2学时)(共22页).ppt Java基础入门...

    完整版 Java基础入门教程 Java程序语言设计 03 java对象 集合框架(共18页).ppt

    完整版 Java基础入门教程 Java程序语言设计 01 java语言基础 Java语言概述(共24页).ppt 完整版 Java基础入门教程 Java程序语言设计 02 java语法基础 Java语法基础(共32页).ppt 完整版 Java基础入门教程 Java程序...

    Java基础知识培训 Java基础教程-Java基础知识全套PPT课件 共9个章节.rar

    Java基础[01-Java概述].pdf Java基础[02-Java基础语法1].pdf Java基础[02-Java基础语法2].pdf Java基础[03-面向对象].pdf Java基础[04-继承上].pdf Java基础[04-继承下].pdf Java基础[05-多线程].pdf Java基础[06-...

    Java基础入门.pdf

    本文档旨在为初学者提供Java基础知识的概述,涵盖了Java是什么、Java能做什么和Java怎样改变我的生活等问题的答案。 什么是Java? Java是一种高级程序语言,也是一个平台。它具有以下特征:简单、面向对象、可分布...

    JAVA基础-集合类

    集合概述 集合是Java编程语言中一种重要的数据结构,它用于存储一系列的对象。与数组相比,集合提供了更加灵活的方式来处理数据。集合的一个显著特点是它的大小是动态变化的,即可以根据需要自动扩展或缩小。 ####...

    Java集合框架(JCF:Java Collections Framework)之概述

    Java 集合框架(JCF:Java Collections Framework)之概述 Java 集合框架(JCF:Java Collections Framework)是 Java 语言中的一组类库,用于实现集合操作的统一标准。集合是计算机科学中的一种基本概念,来源于...

    大学本科Java基础课件涵盖项目源代码课件PPT.zip

    Java基础 Java集合.pptx Java基础反射pptx Java基础 多线程.pptx Java基础 异常处理pptx Java基础 枚举&注解pptx Java基础泛型docx Java基础_网络编程pptx Java基础面向对象pptx Java基础_高级类特性.pptx Java基础...

    Java开发基础(基础语法+面向对象基础+集合基础+常用API)

    本文将围绕Java的基础语法、面向对象基础、集合基础及常用API进行详细介绍,特别适合初学者作为学习指南。 #### 二、开发Java的流程 开发Java程序的基本步骤包括编写程序、编译程序和运行程序: 1. **编写程序**...

    7.尚硅谷_java基础_java集合

    Java 集合概述 Collection 接口 Iterator 接口 Set List Map Collections 工具类 Enumeration

    Java集合排序及java集合类详解.pdf

    容器是Java集合框架的基础概念,它们用于存储对象的集合。容器分为两大类:集合(Collection)和映射(Map)。 - **集合**:用来存储不重复元素的容器,如List和Set。 - **映射**:用来存储键值对(key-value pair)的...

    大学课程讲义-Java基础-Java集合.pptx

    Java 集合框架概述 Java 集合框架是 Java 语言中的一种数据结构,用于存储和操作多个对象引用。 Java 集合类可以分为 Set、List 和 Map 三种体系,分别用于存储无序、不可重复的集合、有序、可重复的集合和具有映射...

    java 集合部分笔记

    【Java集合】 Java集合框架是Java编程语言中用于存储和操作对象的工具,它提供了多种数据结构,如列表、集、映射等,以适应不同的数据处理需求。...了解并熟练掌握Java集合框架是每个Java开发者的基础技能。

    大学课程讲义-Java基础-Java 语言概述

    本课程的讲义详细介绍了Java的基础知识,涵盖了从语言概述到高级特性的各个方面,包括Java语言环境的搭建、基本语法、面向对象编程、异常处理、集合、泛型、注解和枚举、I/O、线程、常用类、反射以及网络编程。...

Global site tag (gtag.js) - Google Analytics