日常学习 8.11 集合与异常值处理

8.11

API文档的查看
API:A 应用程序 P 编程 I 接口(此接口表示对外提供的功能)

API文档:就是这些功能的说明书(字典)
JDKAPI文档是有java源码的文档注释生成的

再API文档中有些方法被标记为 已弃用 ,说明官方不推荐使用,但是可以用

一、集合大家族
-族长(顶层接口):Collection 意为收集器
-List 列表 数据是有序的,可重复的 (适合长期的存储)



-Set 集 数据是无序的,不可重复的 (实现某些功能)

有序:有 下标/索引,添加顺序就是存储的顺序
无序:无 下标/索引,添加顺序不一定是存储的顺序

最常用的集合类:ArrayList


各大容器的对比:
-数组
-长度不可变
-所有的数据类型都能创建对应数组
-同一个数组元素类型必须一致 如 int[]

-对象
-属性的个数是不可变的
-所有的数据类型都能存进对象里


-集合
-长度可变
-集合只能存引用数据类型 (注意:每个基本数据类型都有对应的封装类 如 int --> Integer)
-集合中可以存不同的数据类型,但是一般都会规定集合存储同一种类型,
规定语法叫做定义"泛型" <数据类型>




ArrayList
1.增
add(新元素) 添加到末尾
add(index,新元素) 添加到指定位置


2.删
remove(index) 根据下标删除
remove(对象) 根据对象删除
clear() 清空

3.改
set(index,新值) 根据下标修改


4.查
获取一个新元素 集合名.get(index)

获取每一个元素 遍历
1.普通for循环遍历

2.增强for循环遍历(foreach遍历)迭代
for(元素的类型 元素的变量(a) :遍历的目标){
直接使用a

}
(将遍历的目标一个一个赋值给a)

二、异常大家族
-族长 Throwable 意为可抛出的
-Error 意为错误
比如语法错误,内存溢出 是无法处理的,必须修改代码逻辑

-Exception 意为异常
1.编译时期的异常
一边写代码,一边提示的异常
比如:线程异常 文件异常 IO流的异常 SQL的异常


2.运行时期的异常 RuntimeException
在代码编译阶段没问题,运行之后才会报出的异常
比如:数组越界,集合越界,空指针


异常处理机制
-虚拟机有默认处理方案
1.展示异常的类型信息
2.展示异常出现的位置
3.终止了程序(终止了当前的线程)

-自定义处理
-方式一:try catch代码块
try{
可能出现异常的代码

}catch(异常类型:可直接写父类类型如Exception,所有子类都可检测 取个名字e){
如果try的代码出现异常,并且异常类型与catch的类型匹配,
就会执行这里的代码,并且程序还能继续运行
}


-方式二
1.方法抛出异常 throws
2.谁调用方法,谁处理 try catch

异常处理使用场景
绝对不是隐藏bug或者规避bug
作用是利用异常处理机制 让 代码在改无可改的情况 保存程序继续运行




支线任务:
1.Object的toString方法有什么用

1、toString()方法的设计目的是:通过调用这个方法可以将一个“JAVA对象”转换成“字符串表现形式”。
2、返回对象的字符串表现形式。总的来说,这个方法返回一个字符串,“以文本的方式表示”这个对象。其结果应是一个简洁的,容易阅读的,建议所有子类都重写此方法。
3、**注意:**输出引用的时候,会自动调用该引用的toString()方法。
 

2.==和equals有什么区别

==是比较地址

equals是比较其内容值


3.你觉得String的哪些好用的方法?

-求字符串某一位置字符
public char charAt(int index) 

-提取子串

用String类的substring方法可以提取字符串中的子串,该方法有两种常用参数:
1)public String substring(int beginIndex) // 该方法从beginIndex位置起,从当前字符串中取出剩余的字符作为一个新的字符串返回。
2)public String substring(int beginIndex, int endIndex) // 该方法从beginIndex位置起,从当前字符串中取出到endIndex-1位置的字符
 


4.ArrayList和LinkedList有什么区别

linkedList的底层是链表,在顺序查询的时候效率更高,并且有pop方法可以直接弹出其中的对象

ArratList的底层是数组,乱序查询的时候效率更高。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值