有关文件和异常的练习
-
題目內容: 从键盘输入一个整形数n,如果输入正确的话,输出1-n的值,如果输入错误的话输出“not int” 最后输出end 输入输出说明: 输入:
asd
输出:
not int end
import java.util.InputMismatchException; import java.util.Scanner; public class HW01 { public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("请输入一个整数:"); try { int num = sc.nextInt(); System.out.println(1-num); }catch (InputMismatchException in){ System.out.println("not int"); }finally { System.out.println("end"); } } }
-
題目內容: 模拟向货船上装载集装箱,每个集装箱有一定重量,该重量(整数)大于100小于1000,货船总重为1000, 装载若干集装箱后,如果货船超重,那么货船认为这是一个异常,将拒绝装载集装箱, 但无论是否发生异常,货船都需要正点启航。
import java.util.Scanner;
public class HW02 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入货物重量:");
Freighter fr = new Freighter();
try {
fr.setWeight(sc.nextInt());
System.out.println("货物重量是:"+fr.getWeight());
} catch (MyException e) {
e.printStackTrace();
}finally {
System.out.println("时间到!货船启航");
}
}
}
class Freighter {
private String name;
private int weight;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getWeight() {
return weight;
}
public void setWeight(int weight) throws MyException{
if(weight>10000||weight<100){
throw new MyException("输入的重量不在范围内");
}
this.weight = weight;
}
}
// MyException 文件
public class MyException extends Exception{
public MyException() {
}
public MyException(String message) {
super(message);
}
}
- 递归删除某个目录下的所有的文件
提示: delete()方法只能删除文件,不能删除非空文件夹
模仿课上讲的遍历指定目录及其子目录的方式
import java.io.File;
public class HW03 {
public static void main(String[] args) {
String path = "F:\\Desktop\\Test";
File file = new File(path);
deleteFile(file);
}
public static void deleteFile(File file) {
File[] files = file.listFiles();
if (files != null) {
for (File f : files) {
if (f.isFile()) {
System.out.println(f.getAbsolutePath());
f.delete();
} else {
System.out.println("<" + f.getAbsolutePath() + ">");
deleteFile(f);
f.delete();
}
}
}
}
}