泛型
-泛型方法
[if !supportLists]· [endif]定义泛型方法的规则:所有泛型方法声明都有一个类型参数声明部分(由尖括号分隔),该类型参数声明部分在方法返回类型之前(在下面例子中的<E>)。
[if !supportLists]· [endif]每一个类型参数声明部分包含一个或多个类型参数,参数间用逗号隔开。一个泛型参数,也被称为一个类型变量,是用于指定一个泛型类型名称的标识符。
[if !supportLists]· [endif]类型参数能被用来声明返回值类型,并且能作为泛型方法得到的实际参数类型的占位符。
[if !supportLists]· [endif]泛型方法体的声明和其他方法一样。注意类型参数只能代表引用型类型,不能是原始类型(像int,double,char的等)。
-泛型类
泛型类的声明和非泛型类的声明类似,除了在类名后面添加了类型参数声明部分。
和泛型方法一样,泛型类的类型参数声明部分也包含一个或多个类型参数,参数间用逗号隔开。一个泛型参数,也被称为一个类型变量,是用于指定一个泛型类型名称的标识符。因为他们接受一个或多个参数,这些类被称为参数化的类或参数化的类型。
如果重复则放不进去
内部使用HashMap来实现 键值对 建Key是不能重复的
2.集合是无序的 添加的顺序和存储的顺序无关
使用了默认排序法
哈希算法
如果实现HashMap里面Key不相同
计算这个Key对应的对象的Hash值
整数:在对象的地址的基础上按照一定的算法计算出来的一个整数
如果两个对象相同 那么计算和粗来的Hash值就相同
+HashMap 集合 存储数据的特点:键key-值value
key不能重复 可以是任意的对象类型 通常使用字符串String
HashMap<String,Integer> score =new
HashMap<>();
添加对象:添加键值对
score.put("Chinese",98);
score.put("Math",92);
score.put("English",94);
更改某个键对应的值的值
score.put("Chinese",89);
获取某个键值对的个数
score.size();
获取所有的key keySet
System.out.println(score.keySet());
获取所有的value
values
System.out.println(score.values());
获取Entry:key-value entrySet
System.out.println(score.entrySet());
获取一个键key对应的值
System.out.println(score.get("English"));
System.out.println(score.get("Eng"));
存
System.out.println(score.put("PE",100));
键值对的遍历
1.通过遍历key来得到每一个key对应的值
for (String key: score.keySet()){
通过key得到值
int s =score.get(key);
System.out.println("key:"+key+" value:"+s);
}
2.通过entrySet 得到Entry对象的集合
一个Entry管理一个键值对 getKey
getValue
Set >entrys =score.entrySet();
for (Map.Entry entry:entrys){
得到Entry对应的key
String key =(String)entry.getKey();
获取Entry对应的值
Integer value = (Integer)entry.getValue();
int s2 =score.get(key);
System.out.println("key:"+key+" value:"+s2 );
}
异常处理 处理运行过程中出现的不可控的错误 是程序更健壮:error
Exception-
try{
执行的代码
可能出现的异常
一旦出现异常系统自动为我们创建一个异常类 并抛出
}catch(NullPointerException e){
如果需要自己处理异常就catch
}catch(IOException e){
如果有多个异常 可以使用多个catch来捕获
如果有多个异常 catch的顺序是从小到大
}catch(Exception e){
} finally{
不管有没有异常finally都会被执行
如果资源回收 网络连接 数据库连接I/O流
}
如果异常出现 后面代码将不会执行
try的代码块不要抓太大
使用throws抛出异常 给外部处理
当特殊情况出现了 自己可以选择抛出异常
throw
自定义异常类