Java集合类

集合类概述

Java 语言的java.util包中提供了一些集合类,这些集合类又被称为容器。常用的集合有List集合、Set集合、Map集合,其中List与Set实现了Collection接口。接口还提供了不同的实现类。

List 接口的实现类常用的有ArrayList 与LinkedList。

1.      ArrayList类

该类实现了可变的数组,允许所有元素包括null。可以根据索引位置对集合进行快速的随机访问。缺点是向指定的索引位置插入对象或删除对象的速度较慢,语法格式如下:

List <String> list =new ArrayList<String>();

2.      LinkedList类

该类采用链表结构保存对象。这种结构的优点是便于向集合中插入和删除对象,经常需要向集合中插入、删除对象时,使用LinkedList类实现的List集合的效率较好;但对于随机访问集合,效率较慢。

List<String>list=new LinkedList<String>();

Set接口的实现类常用的有HashSet和TreeSet类。语法格式如下:

Set<String> collSet=New HashSet<String>();

Set<String>collSet2=New TreeSet<String>();

Set集合中的对象时无序的,遍历Set集合的结果与插入Set集合的顺序并不相同。

Map接口常用的实现类有HashMap和TreeMap.

迭代器的创建和使用

利用Iterator接口创建迭代器,Iterator接口位于java.util包下,接口中有三个方法。

(1)      hasNext():如果仍有元素可以迭代,则返回true;

(2)      next():返回迭代的下一个元素;

(3)      remove():从迭代器指向的collection中移除迭代器返回的最后一个元素。

对于列表而言,除了Iterator,java语言还提供了一个功能更加的强大的ListIterator,它可以实现逆序遍历列表中的元素。

异常的分类

在java中可以捕获的异常可分为可控式异常和运行时异常两种类型。

可控式异常

在java中把那些可以预知的错误,成为可控式异常

运行时异常

在java中有些错误是不能被编译器检测到的,因而能够正常编译,但是在运行时就会发生异常,我们把这些异常称为运行时异常。

处理异常

使用try…catch处理异常。

使用try…catch…finally处理异常

Try{

需要执行的语句

}catch(Exception ex){

对异常进行处理的语句

}finally{

一定会被处理的语句

}

Finally语句块通常用于执行垃圾回收、释放资源等操作。

使用try…finally处理异常

在有try…finally语句块的程序中,只要程序执行了try语句中的代码,不管try语句块是否发生异常;与该try语句块对应的finally语句块都一定会被执行,因此通常使用finally语句块进行资源释放。

Java笔记(基础第四篇)的更多相关文章

  1. 《Java笔记——基础语法》

    Java笔记--基础语法       一.字符串的拼接: 例如: System.out.println(""+"");     二.换行语句: 例如: Syst ...

  2. Java语言基础(四)

    Java语言基础(四) 一.基本数据类型(8) byte  8位  使用较少,一般用于网络传输: -128-+127 short  16位 不常用 -32768-+32767 int  32位 常用  ...

  3. Java 多线程基础(四)线程安全

    Java 多线程基础(四)线程安全 在多线程环境下,如果有多个线程在同时运行,而这些线程可能会同时运行这段代码.程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线 ...

  4. 《Java笔记——基础知识点》

    Java笔记--基础知识点       位运算符操作的都是整型的数据. 位运算符是直接对整数的二进制进行计算. 整数不能进行逻辑运算. 运算符优先级别由高到低分别是:() > ! > 算术 ...

  5. Java笔记(十四) 并发基础知识

    并发基础知识 一.线程的基本概念 线程表示一条单独的执行流,它有自己的程序计数器,有自己的栈. 1.创建线程 1)继承Thread Java中java.lang.Thread这个类表示线程,一个类可以 ...

  6. [Java入门笔记] Java语言基础(四):流程控制

    流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...

  7. java基础第四篇之面向对象

    7.封装与面向对象 a.方法: public static void main(String[] args) { } 一般定义标准: 形参:一般把 不确定的量或者变化的量定义在形参位置//圆的的半径, ...

  8. MySQL学习笔记——基础与进阶篇

    目录 一.###MySQL登录和退出 二.###MySQL常用命令 三.###MySQL语法规范 四.###基础查询 五.###条件查询 六.###排序查询 七.###常见函数的学习 八.###分组查 ...

  9. Python笔记_第四篇_高阶编程_进程、线程、协程_5.GPU加速

    Numba:高性能计算的高生产率 在这篇文章中,笔者将向你介绍一个来自Anaconda的Python编译器Numba,它可以在CUDA-capable GPU或多核cpu上编译Python代码.Pyt ...

随机推荐

  1. 使用tensorflow训练SSD(一):相关环境的配置

    在使用TensorFlow进行目标检测时,首先需要下载tensorflow object detection API模型,该模型的下载地址为https://github.com/tensorflow/ ...

  2. [转帖]海思大佬称华为CPU同频追平AMD 注水吹嘘玩文字游戏?

    海思大佬称华为CPU同频追平AMD 注水吹嘘玩文字游戏? https://t.cj.sina.com.cn/articles/view/6635931736/18b88485800100cz4h?fr ...

  3. java http接口请求响应 request response

    接口类: 1 package org.sunshine.dcda.epg.wechat.controller.niao; 2 3 import javax.servlet.http.HttpServl ...

  4. c++ vector容器

    https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html

  5. MySQL_Utilities工具

    需求    Python 2.6    MySQL Connector/Python 连接器 下载地址:    http://dev.mysql.com/downloads/utilities/   ...

  6. eclipse 创建聚合maven项目(转)

    转自https://blog.csdn.net/u013239111/article/details/76560167 以前我们搭建项目时,通常是吧pojo.dao.service.配置文件等都放在一 ...

  7. Typeof() 和 GetType()区别

    1.typeof(x)中的x,必须是具体的类名.类型名称等,不可以是变量名称. 2.GetType()方法继承自Object,所以C#中任何对象都具有GetType()方法,它的作用和typeof() ...

  8. luogu2568GCD题解--欧拉函数

    题目链接 https://www.luogu.org/problemnew/show/P2568 分析 题目即求\(\sum_{i=1}^N \sum_{j=1}^N [gcd(i,j)\) \(is ...

  9. 6. Java基本数据类型

    Java 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. 因此,通过定义不 ...

  10. CentOS如何安装MySQL8.0、创建用户并授权的详细步骤

    # 安装相关软件 yum install -y gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel make cmake # 获取MySQL ...