android学习札记第6章之集合三及其他语法和异常
1、java.util.Iterator(接口):
方法:
hasNext():判断是否有下一条数据。
next():取出下一条数据。
void remove():移除刚刚取出的数据,无返回值。
2、java.util.Collections(集合工具类):
Collections静态方法:
allAll(Collection,值1,值2,值3......):添加数据。
binarySearch(List,数据):二分法查找。
fill(List,数据):将现有数据全部替换。
max(List):按默认排序规则(首字母)取最大值。
min(List):按默认排序规则(首字母)取最小值。
reverser(List):倒序。
sort():按默认排序。
sort(List,comparator):按比较器排序(回调方法)。
shuffle():打乱。
swap(List list,int i,int j):在指定列表的指定位置交换元素。
1、for-each循环:数组遍历、集合迭代遍历的语法简化。
数组遍历:
for(int i=0;i<arr.length;i++){
arr[i];
}
简化为:
for(String str:arr){
循环语句;处理str;
}
集合遍历:
for(Interator<String> it=list.interator();it.haxNext();){
it.next();
}
简化为:
for(String str:list){
循环语句;处理str;
}
2、可变长参数(本质是个数组):
定义可变长数组,可以使用f()定义,如f(1,2,3......)。
void f(int... arr){
arr[0]
arr[arr.length-1]
3、泛型:
是一种编译期语法,防止程序在编译时出错。也是一种类型参数,可以将任意类型传参进来,定义类型时可以用一个大写字母。
class A<LeiXing>{
LeiXing a;
void LeiXing f(LeiXing x){
}
}
<?>:某种特定类型,任何类型都不能放入,只能放入唯一一个引用类型:null。
<? extends Number>:某种Number的子类型。
<E>:该泛型可以定义“返回值”类型。
4、enum枚举(本质是个类,每个枚举选项,都是这个类的对象。):
是一组固定选项,代替数字代码常量的用法。
定义枚举:返回值类型定义为枚举名称。
public enum Type{
COLD,HEAT,NUCLEAR
}
调用时:Type.COLD、Type.HEAT、Type.NUCLEAR
注:switch case中不能加枚举名和点,只能写枚举选项(常量)。
枚举的创建:
第一步:创建枚举类。
第二步:使用枚举类当做返回值类型。
1、异常类在java.lang下,对错误信息的封装对象,错误信息包含:异常类型、提示消息、行号。
2、①处理异常:
try{
执行可能出错的代码;
}catch(Exception e){
处理异常语句;
}finally{
处理异常必须执行的语句(一般执行内存清理工作);
}
或者直接这样写:
try{执行可能出错的代码;}finally{想让用户看到的语句;}
②异常方法:
getMessage():获得提示信息
printStackTrace():打印完整异常信息