break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public stati

Similar documents
Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の break; まで処理しますどれにも一致致しない場合 def

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 条件判断文 3 switch 文 switch 文式が case の値と一致した場合 そこから直後の break; までを処理し どれにも一致しない場合 default; から直後の break; までを処理する 但し 式や値 1

JavaプログラミングⅠ

JavaプログラミングⅠ

Java プログラミング Ⅰ 3 回目変数 変数 変 数 一時的に値を記憶させておく機能型 ( データ型 ) と識別子をもつ 2 型 ( データ型 ) 変数の種類型に応じて記憶できる値の種類や範囲が決まる 型 値の種類 値の範囲 boolean 真偽値 true / false char 2バイト文

K227 Java 2

JavaプログラミングⅠ

JavaプログラミングⅠ

Java プログラミング Ⅰ 3 回目変 数 今日の講義講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能 変数は 型 ( データ型 ) と識別子をもちます 2 型 ( データ型 ) 変数に記憶する値の種類変数の型は 記憶できる値の種類と範囲

プログラミングA

JavaプログラミングⅠ

JavaプログラミングⅠ

JavaプログラミングⅠ

プログラミング入門1

Prog1_3rd

プログラムの基本構成

JavaプログラミングⅠ

プログラミング基礎

プログラミングA

プログラミングA

Java講座

2

プログラミング入門1

JavaプログラミングⅠ

Microsoft Word - java a.doc

r1.dvi

プログラミング入門1

2

オブジェクト指向プログラミング・同演習 5月21日演習課題

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。

8 if switch for while do while 2

プログラミング入門1

プログラミング基礎

kantan_C_1_iro3.indd

マークアップ言語

Assignment_.java 課題 : 転置行列 / class Assignment_ public static void main(string[] args) int i,j; int[][] array = 1,,,,,,,,,,,,,1,1,; 行 列行列 i

問 次の Fortran プログラムの説明及びプログラムを読んで、設問に答えよ。

マークアップ言語

Assignment_.java 0 Assignment_.java 課題 : 台形の面積 / class Assignment_ public static void main(string[] args) throws IOException キーボード準備 int top, bottom,

メソッドのまとめ

Java Java Java Java Java 4 p * *** ***** *** * Unix p a,b,c,d 100,200,250,500 a*b = a*b+c = a*b+c*d = (a+b)*(c+d) = 225

5

コンピュータ中級B ~Javaプログラミング~ 第3回 コンピュータと情報をやりとりするには?

Javaによるアルゴリズムとデータ構造

計算機プログラミング

問題1 以下に示すプログラムは、次の処理をするプログラムである

2

Prog1_2nd

ただし 無作為にスレッドを複数実行すると 結果不正やデッドロックが起きる可能性がある 複数のスレッド ( マルチスレッド ) を安全に実行する ( スレッドセーフにする ) ためには 同期処理を用いるこ とが必要になる 同期処理は 予約語 synchronized で行うことができる ここでは sy

Microsoft PowerPoint - prog03.ppt

Microsoft PowerPoint - class04.ppt

プログラミング入門1

ガイダンス

JavaプログラミングⅠ


Java (9) 1 Lesson Java System.out.println() 1 Java API 1 Java Java 1

JavaプログラミングⅠ

Microsoft Word - CompA-Ex doc

Prog2_9th

fuga scanf("%lf%*c",&fuga); 改行文字を読み捨てる 10 進数の整数 おまじない取り込んだ値を代入する変数 scanf( %d%*c,&hoge); キーボードから取り込め という命令 1: scanf 1 1: int double scanf %d %lf printf

//// Assignment4_1.java // // 課題 1: 長方形の面積 /////////////////


System.out.println("char : " + (int)character.min_value + "~" + (int)character.max_value); System.out.println("float : " + Float.MIN_VALUE + "~" + Flo

解きながら学ぶJava入門編

情報処理Ⅰ

プログラミング基礎I(再)

Microsoft Word - 商業-3

HCI プログラミング 10 回目テキストフィールドとキーイベント 今日の講義で学ぶ内容 テキストフィールドの利用 キーイベントの処理 テキストフィールドの利用 1 テキストフィールドを配置してみましょう テキストフィールドを用いることにより 数値や文字列などのデータ入力が可能になります ソースファ

IE6 2 BMI chapter1 Java 6 chapter2 Java 7 chapter3 for if 8 chapter4 : BMI 9 chapter5 Java GUI 10 chapter6 11 chapter7 BMI 12 chap

スライド 1

2016 年度 JAVA 講座第六週目 目次 パッケージ... 2 パッケージの作成... 2 パッケージの使用方法... 3 異なるパッケージ同名クラスの宣言... 4 パッケージの側面から見たアクセス修飾子... 4 ラッパークラス... 5 ラッパークラス利用法:キャスト... 5 ラッパーク

JavaプログラミングⅠ

やさしいJavaプログラミング -Great Ideas for Java Programming サンプルPDF

I java A

Java演習(4) -- 変数と型 --

新・明解Java入門

Prog2_10th

r02.dvi

ohp02.dvi

Java学習教材

3,, となって欲しいのだが 実際の出力結果を確認すると両方の配列とも 10, 2, 3,, となってしまっている この結果は代入後の配列 a と b は同じものになっていることを示している つまり 代入演算子 = によるの代入は全要素のコピーではなく 先をコピーする ため 代入後の a と b は

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt

第 1 章 Java 言語について ( オブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐 ) Java 言語の概要とオブジェクト指向, 変数の扱い方, 繰り返し条件と条件分岐について理解し, プログラム作成を行う 1.1 Java 言語の概要 JAVA は Sun Microsystems

3. 標準入出力

Programming-C-9.key

Prog1_10th

char int float double の変数型はそれぞれ 文字あるいは小さな整数 整数 実数 より精度の高い ( 数値のより大きい より小さい ) 実数 を扱う時に用いる 備考 : 基本型の説明に示した 浮動小数点 とは数値を指数表現で表す方法である 例えば は指数表現で 3 書く

JavaプログラミングⅠ

Prog1_15th

Prog1_6th

Javaプログラムの実行手順

デジタル表現論・第6回

3 Java 3.1 Hello World! Hello World public class HelloWorld { public static void main(string[] args) { System.out.println("Hello World");

デジタル表現論・第4回

Prog1_6th

GEC-Java

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

HCI プログラミング 8 回目ボタン チェックボックス ラジオボタン 今日の講義で学ぶ内容 ボタンとアクションイベント ボタンのカスタマイズ チェックボックスとラジオボタン ボタンとアクションイベント 1 ボタンを配置してみましょう ボタンは ラベルと同じようにフォントやその色 画像の貼り付けなど

Microsoft PowerPoint - netpro_2015_02.ppt [互換モード]

Transcription:

Java プログラミング Ⅰ 7 回目 switch 文と論理演算子 今日の講義で学ぶ内容 switch 文 論理演算子 条件演算子 条件判断文 3 switch 文 switch 文 式が case のラベルと一致する場所から直後の まで処理しますどれにも一致しない場合 default: から直後の まで処理します 式は byte, short, int, char 型 ( 文字または整数 ) を演算結果としますラベルには整数リテラル 文字リテラルを指定します switch( 式 ) case ラベル 1 : 文 1 case ラベル 2 : 文 2 default: 文 3 コロンです セミコロンです 式の結果 ラベル 1 ラベル 2 以外 文 1 文 2 文 3 一般に default: は最後に書くようにします ラベルは重複しないように注意しましょうラベルが重複する場合は case ラベルが重複しています のコンパイルエラーになります default: は指定しないか または 1 つ指定するかであり複数指定することはできません default: を省略するとどのラベルとも一致しない場合 何もせず switch 文を抜けます switch 文の式にはこの他列挙型やラッパクラス またラベルには定数などの定数式を書くことができより柔軟なプログラムが可能です Java プログラミング Ⅱ で解説します - 1/10 -

break 文 switch ブロック内の実行中の処理を強制的に終了し ブロックから抜けます switch(i) 強制終了 ソースコード例ソースファイル名 :Sample7_1.java // 入力値の判定 import java.io.*; class Sample7_1 public static void main(string[] args) throws IOException // キーボード入力の準備 BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); // キーボード入力 System.out.println(" "); int i; i=integer.parseint(br.readline()); switch(i) // 変数 i により処理を分岐 case 1: // i が 1 のとき System.out.println("1 が入力されました "); case 2: // i が 2 のとき System.out.println("2 が入力されました "); default: // i が 1 でも 2 でもないとき System.out.println("1 か 2 を入力してください "); - 2/10 -

実行画面 1 1 1 が入力されました 実行画面 2 2 2 が入力されました 実行画面 3 3 1 か 2 を入力してください ソースコード例ソースファイル名 :Sample7_2.java // 入力文字の判定 class Sample7_2 public static void main(string[] args) char c='b'; switch(c) // 変数 c により処理を分岐 case 'a': // c が 'a' のとき System.out.println("a です "); case 'b': // c が 'b' のとき System.out.println("b です "); default: // c が 'a' でも 'b' でもないとき System.out.println("a でも b でもありません "); - 3/10 -

実行画面 b です switch 文で を省略したらどうなる? 続けて次のラベルからの処理を行います 以降 最初に出会う まで来たら switch ブロックを抜けます すべての を書かない場合 switch ブロックの最後まで来るとブロックを抜けます Sample7_1.java の をすべて取り除いた場合の実行画面です 実行画面 1 1 1 が入力されました 2 が入力されました 1 か 2 を入力してください 実行画面 2 2 2 が入力されました 1 か 2 を入力してください 実行画面 3 3 1 か 2 を入力してください - 4/10 -

論理演算子 論理演算子!, &&, オペランド間の論理的な関係 ~ではない かつ またはを評価して真 (true) または偽 (false) を判断しますオペランドの数! は単項演算子です && と は 2 項演算子です オペランドは boolean 型です演算結果は boolean 型です boolean 型の変数には論理値リテラルの true と false を代入できます 論理演算子とその意味ここで 変数 a と b を boolean 型とします 論理否定! a!a ~ではない true false false true たとえば!(3 < 5) false 関係演算子と一緒に 関係演算子の演算結果は boolean 型です 論理演算子のオペランドに関係演算子を用いた式を書くことが多いです 論理積 && a b a && b かつ true true true true false false false true false false false false たとえば (1 == 0)&&(1 < 2) false 論理和 a b a b または true true true true false true false true true false false false たとえば (1 == 0) (1 < 2) true - 5/10 -

ソースコード例ソースファイル名 :Sample7_3.java // 論理演算子の真理値表 class Sample7_3 public static void main(string[] args) System.out.println("!true = "+ (!true)); System.out.println("!false = " + (!false)); System.out.println("true && true = "+ (true && true)); System.out.println("true && false = "+ (true && false)); System.out.println("false && true = "+ (false && true)); System.out.println("false && false = "+ (false && false)); System.out.println("true true = "+ (true true)); System.out.println("true false = "+ (true false)); System.out.println("false true = "+ (false true)); System.out.println("false false = "+ (false false)); 実行画面!true = false!false = true true && true = true true && false = false false && true = false false && false = false true true = true true false = true false true = true false false = false - 6/10 -

ソースコード例ソースファイル名 :Sample7_4.java // 大文字 小文字の処理 import java.io.*; class Sample7_4 public static void main(string[] args) throws IOException // キーボード入力の準備 BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); System.out.println(" あなたは男性ですか? ny か N を入力してください "); // キーボードから 1 文字を入力 char c = br.readline().charat(0); if(c == 'Y' c == 'y') // Y または y のとき System.out.println(" あなたは男性ですね "); else if(c == 'N' c == 'n') // N または n とき System.out.println(" あなたは女性ですね "); else System.out.println("Y か N を入力してください "); 1 文字入力と他のキーボード入力 // キーボードから文字列を入力 String str = br.readline(); // キーボードから整数を入力 int i = Integer.parseInt(br.readLine()); // キーボードから実数を入力 double d = Double.parseDouble(br.readLine()); // キーボードから一文字を入力 char c = br.readline().charat(0); 実行画面 あなたは男性ですか? Y か N を入力してください y あなたは男性ですね - 7/10 -

if 文の条件内の論理演算子 を switch 文でわかりやすく表現してみましょう ソースファイル名 :Ext7_1.java // 大文字 小文字の処理 2 import java.io.*; class Ext7_1 public static void main(string[] args) throws IOException // キーボード入力の準備 BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); System.out.println(" あなたは男性ですか? ny か N を入力してください "); // キーボードから 1 文字を入力 char c = br.readline().charat(0); switch(c) case 'Y': case 'y': // Y または y のとき System.out.println(" あなたは男性ですね "); case 'N': case 'n': // N または n とき System.out.println(" あなたは女性ですね "); default: System.out.println("Y か N を入力してください "); - 8/10 -

条件演算子 条件演算子? : 条件が true のとき式 1 false のとき式 2 を処理します 条件は boolean 型で 関係演算子で表現される式などを記述します例えば a < b a!= 5 など 演算結果は条件が true のとき式 1 の値 false のとき式 2 の値です 演算結果の型は式 1 と式 2 の演算結果の型のうちランクの高い型です 最終的に演算結果となる値は式 1 と式 2 のどちらかですたとえば 条件演算子の演算結果を別の変数に代入する場合にどちらでも対応できるようにランクの高い型になるようになっています 条件? 式 1 : 式 2 コード例 a==2? 10 : 20; コード例 a>=0? 1 : 1.5; ソースコード例ソースファイル名 :Sample7_5.java // 偶数 奇数の判定 class Sample7_5 public static void main(string[] args) int i = 3; // 偶数 奇数の判断 String str; str = ((i%2==0)? " 偶数 " : " 奇数 "); System.out.println(" 与えられた整数は "+str+" です "); - 9/10 -

実行画面 与えられた整数は奇数です 条件演算子と if 文の違いは? if 文 制御構造の 1 つ 演算結果をもちません 条件演算子 演算子の 1 つ 演算結果をもちますので 式の一部に利用できますたとえば int a=1; int b = (a==1? 10 : 20) + 5; とすると 変数 b には 15 が代入されます また 次の条件演算子のコードは ans = 条件? 式 1 : 式 2 ; if~else 文を用いて if( 条件 ) ans = 式 1 ; else ans = 式 2 ; と同じです 今日の講義のまとめ switch 文は条件判断文の 1 つです 多分岐の条件判断を見通し良く記述できます 論理演算子は 論理否定 ~ ではない 論理積 かつ 論理和 または を評価します 論理演算子を用いると if 文や if ~ else 文でより高度な条件を記述できます 条件演算子は 3 項演算子です 条件演算子を用いた式の演算結果は 与えられた条件が真または偽によりいずれかに決まります - 10/10 -