携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第2天,点击查看活动详情
1.Map
建立映射关系
1.key(键)->value(值),key要唯一,键值对entry
2.Map有两个泛型,分别限制key和value的类型
3.Map.of不可变的map集合,HashMap可变的map集合
4.Map的增(put),删(remove),改(put),查(get)
5.Map的遍历,Map.entrySet(),用增强for循环遍历
代码Demo:
public class TestMap {
public static void main(String[] args) {
System.out.println(find1("blue"));
}
public static String find1(String key){
Map<String,String> map = new HashMap<>();
map.put("black","小黑");
map.put("white","小白");
map.put("blue","小蓝");
return map.get(key);
}
}
public class TestMap {
public static void main(String[] args) {
System.out.println(find1("blue"));
}
public static String find1(String key) {
Map<String, String> map = new HashMap<>();
map.put("black", "小黑");
map.put("white", "小白");
map.put("blue", "小蓝");
// return map.get(key);
for (Map.Entry<String, String> m : map.entrySet()) {
System.out.println("Key:" + m.getKey() + "Value:" + m.getValue());
}
return map.get(key);
}
}
2.异常
代码Demo:
public class TestTry {
public static void main(String[] args) {
try {
test(0.0);
}catch (IllegalArgumentException e){
System.out.println(e);
}
System.out.println(3);
}
public static void test(double p){
if(p<=0){
throw new IllegalArgumentException("参数异常");
}
else{
System.out.println(2);
}
}
}
结果:不会终止,可以继续运行
无法处理异常的两种情况:
1.没加异常处理语句
2.main方法中catch的异常类型与实际的异常类型不同(Exception父类可以捕获子类异常)
3.一旦java虚拟机收到异常程序就会终止
Spring异常处理
Spring框架已经做好异常处理,无须自己单独写
运行时异常vs编译时异常
finally
无论有没有异常,都会执行finally内代码
使用场景:
操作外部资源,文件或数据库等,使用后都要关闭
此时把close放在finally中
代码Demo:
public class TestTry {
public static void main(String[] args) {
try {
System.out.println(1);
}catch (Exception e){
System.out.println(2);
}finally {
System.out.println(3);
}
}
以上Java基础部分完成