Java笔记(基础第四篇)
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笔记(基础第四篇)的更多相关文章
- 《Java笔记——基础语法》
Java笔记--基础语法 一.字符串的拼接: 例如: System.out.println(""+""); 二.换行语句: 例如: Syst ...
- Java语言基础(四)
Java语言基础(四) 一.基本数据类型(8) byte 8位 使用较少,一般用于网络传输: -128-+127 short 16位 不常用 -32768-+32767 int 32位 常用 ...
- Java 多线程基础(四)线程安全
Java 多线程基础(四)线程安全 在多线程环境下,如果有多个线程在同时运行,而这些线程可能会同时运行这段代码.程序每次运行结果和单线程运行的结果是一样的,而且其他的变量的值也和预期的是一样的,就是线 ...
- 《Java笔记——基础知识点》
Java笔记--基础知识点 位运算符操作的都是整型的数据. 位运算符是直接对整数的二进制进行计算. 整数不能进行逻辑运算. 运算符优先级别由高到低分别是:() > ! > 算术 ...
- Java笔记(十四) 并发基础知识
并发基础知识 一.线程的基本概念 线程表示一条单独的执行流,它有自己的程序计数器,有自己的栈. 1.创建线程 1)继承Thread Java中java.lang.Thread这个类表示线程,一个类可以 ...
- [Java入门笔记] Java语言基础(四):流程控制
流程控制指的是在程序运行的过程中控制程序运行走向的方式.主要分为以下几种: 顺序结构 顺序结构,顾名思义,是指程序从上往下逐步顺序执行.中间没有任何的判断和跳转. 分支结构 Java提供两种分支结构: ...
- java基础第四篇之面向对象
7.封装与面向对象 a.方法: public static void main(String[] args) { } 一般定义标准: 形参:一般把 不确定的量或者变化的量定义在形参位置//圆的的半径, ...
- MySQL学习笔记——基础与进阶篇
目录 一.###MySQL登录和退出 二.###MySQL常用命令 三.###MySQL语法规范 四.###基础查询 五.###条件查询 六.###排序查询 七.###常见函数的学习 八.###分组查 ...
- Python笔记_第四篇_高阶编程_进程、线程、协程_5.GPU加速
Numba:高性能计算的高生产率 在这篇文章中,笔者将向你介绍一个来自Anaconda的Python编译器Numba,它可以在CUDA-capable GPU或多核cpu上编译Python代码.Pyt ...
随机推荐
- 使用tensorflow训练SSD(一):相关环境的配置
在使用TensorFlow进行目标检测时,首先需要下载tensorflow object detection API模型,该模型的下载地址为https://github.com/tensorflow/ ...
- [转帖]海思大佬称华为CPU同频追平AMD 注水吹嘘玩文字游戏?
海思大佬称华为CPU同频追平AMD 注水吹嘘玩文字游戏? https://t.cj.sina.com.cn/articles/view/6635931736/18b88485800100cz4h?fr ...
- java http接口请求响应 request response
接口类: 1 package org.sunshine.dcda.epg.wechat.controller.niao; 2 3 import javax.servlet.http.HttpServl ...
- c++ vector容器
https://www.runoob.com/w3cnote/cpp-vector-container-analysis.html
- MySQL_Utilities工具
需求 Python 2.6 MySQL Connector/Python 连接器 下载地址: http://dev.mysql.com/downloads/utilities/ ...
- eclipse 创建聚合maven项目(转)
转自https://blog.csdn.net/u013239111/article/details/76560167 以前我们搭建项目时,通常是吧pojo.dao.service.配置文件等都放在一 ...
- Typeof() 和 GetType()区别
1.typeof(x)中的x,必须是具体的类名.类型名称等,不可以是变量名称. 2.GetType()方法继承自Object,所以C#中任何对象都具有GetType()方法,它的作用和typeof() ...
- luogu2568GCD题解--欧拉函数
题目链接 https://www.luogu.org/problemnew/show/P2568 分析 题目即求\(\sum_{i=1}^N \sum_{j=1}^N [gcd(i,j)\) \(is ...
- 6. Java基本数据类型
Java 基本数据类型 变量就是申请内存来存储值.也就是说,当创建变量的时候,需要在内存中申请空间. 内存管理系统根据变量的类型为变量分配存储空间,分配的空间只能用来储存该类型数据. 因此,通过定义不 ...
- CentOS如何安装MySQL8.0、创建用户并授权的详细步骤
# 安装相关软件 yum install -y gcc gcc-c++ openssl openssl-devel ncurses ncurses-devel make cmake # 获取MySQL ...