第六テストレポートの要約で8週間コース

実験:
出典:

package exercise;

public class ArrayIndexOutOfBoundsException {
    public static void main(String args[]) {
        int a[] = null;                         //定义数组,初始化为null
        a = new int[5];                         //设置数组大小
        System.out.println("程序开始运行");           //程序开始运行
        try {
            for (int i = 1; i < 10; i++) {              //使数组越界
                a[i - 1] = i - 2;
            }
        } catch (Exception e) {                         //异常类型匹配
            System.out.println(e);                      
            System.out.println("数组越界");             //输出类型
        } finally {
            System.out.println("程序正常结束");               //程序正常结束
        }

    }

}

:ショットを実行し
た実験のアイデアを:過去にこの質問を達成するために、国境を越えた実験の配列に問題が非常に簡単ですしていたので、主な治療法は十分に独自の珍しい与えられています。

ソース:
~~~
パッケージエクササイズ。

輸入はjava.util.ArrayList;
輸入はjava.util.List;
インポートjava.util.Scanner;

クラスDangerEexceptionは、例外{延びている
文字列のマッサージ= NULLと、

public DangerException() {
    massage = "bibibi 危险物品:";
}

public String toshow() {
    return massage;

}

}

クラス製品{

String name;
boolean isDanger = true;

public Goods(String name) {
    this.name = name;
}

}

パブリッククラスマシン{
静的ArrayListのリスト。

public Machine(ArrayList list) {
    this.list = list;
}

public void ListAdd(String name) {
    list.add(name);
}

public void ListRemove(String name) {
    if (list != null) {
        list.remove(name);
    }
}

void cheakBag(Goods goods) throws Myexception {
    if (goods.isDanger) {
        throw new Myexception();
    }

}

public static void main(String args[]) {
    String n = null;
    int flag = 0;
    list = new ArrayList();
    Machine machine = new Machine(list); 
    Goods goods = new Goods(n);
    machine.ListAdd("打火机");      //添加初始危险物品
    machine.ListAdd("管制刀具");
    machine.ListAdd("汽油");
    machine.ListAdd("化妆品");
    Scanner sc = new Scanner(System.in);
    System.out.println("1.添加危險物品");
    System.out.println("2.刪除危險物品");
    System.out.println("3.物品檢查");
    System.out.print("请输入操作类型:");
    flag = sc.nextInt();
    if (flag == 1) {
        System.out.print("请输入添加的物品:" + " ");
        String x = sc.next();
        machine.ListAdd(x);
        System.out.println("开始检查:");
        System.out.print("待检查物品:" + " ");
        n = sc.next();
        if (list.contains(n)) {
            try {
                machine.cheakBag(goods);
            } catch (Myexception e) {
                System.out.println(e.toshow() + n);
            }

        } else {
            System.out.println("安全通过");
        }
    }
    if (flag == 2) {
        System.out.print("请输入删除的物品:" + " ");
        String x = sc.next();
        machine.ListRemove(x);
        System.out.println("开始检查:");
        System.out.print("待检查物品:" + " ");
        n = sc.next();
        if (list.contains(n)) {
            try {
                machine.cheakBag(goods);
            } catch (Myexception e) {
                System.out.println(e.toshow() + n);
            }

        } else {
            System.out.println("安全通过");
        }
    }
    if (flag == 3) {
        System.out.println("开始检查:");
        System.out.print("待检查物品:" + " ");
        n = sc.next();
        if (list.contains(n)) {
            try {
                machine.cheakBag(goods);
            } catch (Myexception e) {
                System.out.println(e.toshow() + n);
            }

        } else {
            System.out.println("安全通过");
        }
    }
}

}
~~~

ランのスクリーンショット:
追加:

削除:

:チェック

私が言ったクラス内の被写体の先生が、私は、トピックを得たときに、ビットを読んで、それだけであれば、今までの私はまだ、商品を使用するかわからない:考えをisDangerが、代わりに財財、そして製品のクラス定義の文字列名として定義することができ、また名前とisDangerを保存し、真であるかを決定するために、==はかなり理解していない、知識の低レベルであってもよいが、まだ必要があります基本的には対象の要件を達成します。同様ArrayListクラスの使用のように、初めは私が直接、その後、キューのリストをインスタンス化して、削除するlist.remove()を追加()list.add、その後、追加する場合に必要な、と思った、および変更します直接のArrayList lsitプロパティを定義し、私は問題が少し面倒だと思うので、ユーザーは、その後、コード、フラグ判断、EMM、コードビット冗長、それでも自分の最適化をゆっくりと、最後に追加・削除を達成することができますそれを上だと思うし、その後、変更を加える必要があるか、技術が動作しないので、私たちは訓練を強化しなければなりません。

学習のまとめ:

おすすめ

転載: www.cnblogs.com/xudo/p/11681918.html