标签:整型 ati 多个 its put 读取文件 编写 static fileinput
本次PTA作业题集异常
结合题集题目7-1回答
空指针异常NullPointerException
不需要捕获,它们都继承于RuntimeException,是Unchecked Exception,写代码时要多加注意
凡是直接继承自Exception的异常都需要捕获
题集题目7-2
输入时,有可能输入的是非整型字符串,这时候需要输出异常信息,然后重新输入。
要将输入的字符串放入try块中,进行捕获异常
题集题目7-3
阅读Integer.parsetInt源代码
可以让用户自己发现产生异常的原因
产生IllegalArgumentException异常,需要传递给调用者产生异常的原因,例如:begin<end、begin不得小于0、end不得大于arr.length
题集题目6-3
使用抛出异常的方式代表程序运行时出错不会使程序崩溃,而是继续运行,并将异常抛出,使我们能更直观的发现问题
RuntimeException类型的异常属于Unchecked Exception,,不需要使用throws关键字来声明
如果用throw关键字来声明RuntimeException类型的异常,起到提示的作用,可能会抛出异常
题集题目6-1
当异常之间存在有继承关系时,应先捕获子类异常,再捕获父类异常,否则子类的异常不会被捕获
子类异常的捕获要在父类之前
byte[] content = null;
FileInputStream fis = new FileInputStream("testfis.txt");
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
System.out.println(Arrays.toString(content));//打印数组内容
注1:里面有多个方法均可能抛出异常。
功能2:需要添加finally关闭文件。无论上面的代码是否产生异常,总要提示关闭文件ing。如果关闭文件失败,提示关闭文件失败!
public class Main1 {
public static void main(String[] args) {
byte[] content = null;
FileInputStream fis =null;
try {
fis = new FileInputStream("testfis.txt");
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
}catch (FileNotFoundException e){
System.out.println(e);
System.out.println("找不到文件testfis.txt,请重新输入文件名");
}catch (IOException e){
System.out.println(e);
System.out.println("打开或读取文件失败!");
}
finally {
try {
fis.close();
System.out.println("关闭文件ing");
}catch (Exception e){
System.out.println(e);
System.out.println("关闭文件失败");
}
}
System.out.println(Arrays.toString(content));//打印数组内容
}
}
释放资源的操作应放在finally块,因为finally块的语句总是被执行,进行在使用finally关闭资源的时候,内部中执行的语句也可能产生异常,因此也要对其进行try-catch处理。
try(FileInputStream fis = new FileInputStream("testfis.txt")){
int bytesAvailabe = fis.available();//获得该文件可用的字节数
if(bytesAvailabe>0){
content = new byte[bytesAvailabe];//创建可容纳文件大小的数组
fis.read(content);//将文件内容读入数组
}
}catch(Exception e){
System.out.println(e);
}System.out.println(Arrays.toString(content));
}
不需要在finally块中另外进行资源的关闭
登录lib.jmu.edu.cn,对图书进行搜索。然后登录图书馆信息系统,查看我的图书馆。如果让你实现一个图书借阅系统,尝试使用面向对象建模。
学生,老师,管理员
删除图书
用Map进行图书信息的存储
用Set进行读者信息的存储
题目集:异常
在码云的项目中,依次选择“统计-Commits历史-设置时间段”, 然后搜索并截图
需要有两张图(1. 排名图。2.PTA提交列表图)
需要将每周的代码统计情况融合到一张表中。
周次 | 总代码量 | 新增代码量 | 总文件数 | 新增文件数 |
---|---|---|---|---|
11 | 2981 | 170 | 57 | 5 |
201621123083 《Java程序设计》第10周学习总结
标签:整型 ati 多个 its put 读取文件 编写 static fileinput
原文地址:http://www.cnblogs.com/jmu201621123083/p/7895930.html