• 検索結果がありません。

できるプログラマーを本気で育てる Java 超 Webプログラマーへの第 歩 第 3 回コレクションと例外処理 テクノロジックアート 瀬嘉秀

N/A
N/A
Protected

Academic year: 2021

シェア "できるプログラマーを本気で育てる Java 超 Webプログラマーへの第 歩 第 3 回コレクションと例外処理 テクノロジックアート 瀬嘉秀"

Copied!
30
0
0

読み込み中.... (全文を見る)

全文

(1)

できるプログラマーを本気で育てる

Java超⼊⾨ Webプログラマーへの

第⼀歩

第3回 コレクションと例外処理

テクノロジックアート ⻑瀬 嘉秀

(2)

■コレクションとは

■例外処理

Java言語とオブジェクト指向

■属性と振る舞い

■クラスとメソッド

■オブジェクト指向の特徴

■演習問題

内容

(3)

Java (アジャイルソフトウェア開発技術シリーズ・基礎編) 【発売日】 2012年5月10日 【著作】 株式会社テクノロジックアート 【監修】 長瀬 嘉秀 【編者】 浜川 剛、山下 智也 【出版】 東京電機大学出版局 【ISBN】 978-4501550400

勉強会の参考書

(4)

コレクション

(5)

5

コレクション

•  要素「オブジェクト」を格納する

•  格納されているすべての要素をコレクション

から取り除く

•  コレクションが空かどうかを調べる

•  特定の要素をコレクションから取り除く

(6)

ArrayList <String> animals = new

ArrayList<String>();

String dog ="dog";

String cat = "cat";

String horse = "horse";

animals.add(dog);

animals.add(cat);

animals.add(horse);

(7)

System.out.println("3件追加後の要素数は、" + animals.size() + "です"); animals.clear(); System.out.println("clear直後のisEmptyの結果は、" + animals.isEmpty() + "です"); animals.add(dog); animals.add(cat); System.out.println("0番目の要素は、”" + animals.get(0) + "です"); animals.remove(0); System.out.println(“0番目の要素は、”“ + animals.get(0) + ”です“);

コード2

(8)

• 

add

• 

size

• 

clear

• 

isEmpty

• 

remove

LISTの主なメソッド

(9)

• 

List

– Listは、要素を順序付けて管理する。コレクションの

要素に対して、インデックスを指定してアクセスす

ることができる。配列に近い構造である。

• 

Set

– 重複要素のないオブジェクトの集合。Listのような

順序管理は行わない。複数のオブジェクトを集合と

して表現したい場合に適している。

• 

Map

– 要素とキーを1対1で関連付けて管理する。同一

のキーを複数格納することはできない。

コレクションフレームワーク

(10)

HashSet <String> animals = new

HashSet<String>();

String dog ="dog";

String cat = "cat";

String horse = "horse";

animals.add(dog);

animals.add(cat);

animals.add(horse);

(11)

System.out.println("3件追加後の要素数は、" + animals.size() + "です"); animals.clear(); System.out.println("clear直後のisEmptyの結果は、" + animals.isEmpty() + "です"); animals.add(dog); animals.add(cat);

boolean result = animals.add(cat);

System.out.println("同じ要素を2度格納しようとすると、" + result + "です");

(12)

for ( Iterator<String> it = animals.iterator();it.hasNext();){ String animal = it.next();

System.out.println(animal); }

animals.remove(cat);

System.out.println("catを取り除いた後のsetの中身は、”" ); for ( Iterator<String> it = animals.iterator();it.hasNext();){

String animal = it.next(); System.out.println(animal); }

(13)

String dog ="dog";

String cat = "cat";

String horse = "horse";

animals.put(3,horse);

animals.put(2,cat);

animals.put(1,dog);

(14)

System.out.println("3件追加後の要素数は、" +

animals.size() + "です");

for ( Iterator<Integer> it =

animals.keySet().iterator();it.hasNext();){

String animal = animals.get(it.next());

System.out.println(animal);

}

animals.clear();

System.out.println("clear直後のisEmptyの結果は、" +

animals.isEmpty() + "です");

Mapのコード2

(15)

animals.put(1,dog); animals.put(2,cat); animals.put(3,horse);

System.out.println("key=2の要素は、" + animals.get(2) + "です");

for ( Iterator<Integer> it = animals.keySet().iterator();it.hasNext();){ String animal = animals.get(it.next());

System.out.println(animal); }

animals.remove(2);

System.out.println("key=2を取り除いた後のmapの中身は、" ); for ( Iterator<Integer> it = animals.keySet().iterator();it.hasNext();){ String animal = animals.get(it.next());

System.out.println(animal); }

(16)

次の数値を

TreeMapに入れて、昇順で表示し

てください。

また、合計値、平均値も表示してください。

1 10 12 3 8 90 34 82

(17)
(18)

•  例外とは、プログラムの実行中に発生した

異常事態を検知する仕組み

•  開こうとしたファイルが存在しない、など

(19)

public static void main(String[] args)

throws FileNotFoundException {

BufferedReader bufferedReader = new

BufferedReader(new

FileReader("test.txt"));

}

(20)

ry-catchの基本構文

try {

 例外が発生する可能性のあるコード

} catch (例外クラス 変数) {

 例外発生時のエラー処理

}

例外の構⽂

(21)

throws IOException {

BufferedReader bufferedReader;

try {

bufferedReader = new BufferedReader(new

FileReader("test.txt"));

} catch (FileNotFoundException e) {

System.out.println("ファイルが見つかりませ

ん");

}

}

例外に処理を付ける

(22)
(23)

•  標準入力 

System.in

•  標準出力 

System.out

•  標準エラー 

System.err

(24)

•  標準入力からデータを受け取る

標準⼊⼒

throws IOException {

int s = System.in.read();

System.out.println(s);

}

(25)

•  標準入力から文字列を受け取る

標準⼊⼒

throws IOException {

BufferedReader bufferedReader;

bufferedReader =

new BufferedReader(new InputStreamReader(System.in));

String s = bufferedReader.readLine();

System.out.println(s);

}

(26)

キーボードからの入力を受け付けて、入力内

容を表示し、また入力待ち状態に戻るプロ

ンプトのプログラムを作成してください。

また、「

exit」が入力されたら待受を終了する。

(27)

•  ファイルにデータを書き込む

標準出⼒

throws IOException {

BufferedWriter bufferedWriter =

new BufferedWriter(new FileWriter("study43.txt"));

bufferedWriter.write("11111122224444");

bufferedWriter.close();

}

(28)

ファイル(exe42.txt)を開き、月の英語名(January、February、…)を書き込 むプログラムを作成してください。 January February March April May June July August September October November December

演習問題3

(29)

演習問題3で作成されたファイル(

exe42.txt)

を読み込み、各行を行番号付きで表示する

プログラムを作成してください。

1 January

2 February

演習問題4

(30)

できるプログラマーを本気で育てる

Java超⼊⾨ Webプログラマーへの

第⼀歩

第3回 コレクションと例外処理

テクノロジックアート ⻑瀬 嘉秀

参照

関連したドキュメント

本体背面の拡張 スロッ トカバーを外してください。任意の拡張 スロット

このたび、第4回令和の年金広報コンテストを開催させていただきま

Nintendo Switchでは引き続きハードウェア・ソフトウェアの魅力をお伝えし、これまでの販売の勢いを高い水準

編﹁新しき命﹂の最後の一節である︒この作品は弥生子が次男︵茂吉

本番前日、師匠と今回で卒業するリーダーにみん なで手紙を書き、 自分の思いを伝えた。

並んで慌ただしく会場へ歩いて行きました。日中青年シンポジウムです。おそらく日本語を学んでき た

本プログラム受講生が新しい価値観を持つことができ、自身の今後進むべき道の一助になることを心から願って

第20回 4月 知っておきたい働くときの基礎知識① 11名 第21回 5月 知っておきたい働くときの基礎知識② 11名 第22回 6月