JavaプログラミングⅠ

Similar documents
JavaプログラミングⅠ

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

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

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

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

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

K227 Java 2

JavaプログラミングⅠ

JavaプログラミングⅠ

新・明解Java入門

Microsoft Word - java a.doc

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

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

JavaプログラミングⅠ

JavaプログラミングⅠ

解きながら学ぶJava入門編

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

プログラミングA

Java講座

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

情報技術 Java の特徴 Java は現在 事務処理計算用プログラミング言語として開発された COBOL に取って代わり C 言語や C++ と並んで 現在最も使われているプログラミング言語の一つである Java は Write Once, Run Anywhere( プログラムを一度作成したらど

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

Programming-C-9.key

2

プログラミング入門1

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

Prog1_2nd

ガイダンス

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


2

JavaプログラミングⅠ

プログラミング入門1

Prog1_15th

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

r1.dvi

JavaプログラミングⅠ

プログラムの基本構成

マークアップ言語

プログラミング入門1

プログラミング入門1

Prog2_9th

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

Prog1_10th

Prog1_6th

JavaプログラミングⅠ

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

スライド 1

class TestPrimitiveType{ public static

gengo1-2

PowerPoint プレゼンテーション

スライド 1

デジタル表現論・第6回

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

Microsoft PowerPoint - prog03.ppt

<4D F736F F D2091E F196E291E889F090E C4816A82CC838C E646F6378>

10/ / /30 3. ( ) 11/ 6 4. UNIX + C socket 11/13 5. ( ) C 11/20 6. http, CGI Perl 11/27 7. ( ) Perl 12/ 4 8. Windows Winsock 12/11 9. JAV

Microsoft PowerPoint ppt

Java知識テスト問題

2

メソッドのまとめ

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


8 if switch for while do while 2

Prog2_10th

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

デジタル表現論・第4回

untitled

JavaプログラミングⅠ

数値計算

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


Javaセキュアコーディングセミナー東京 第3回 入出力(File, Stream)と例外時の動作 演習解説

JavaプログラミングⅠ

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

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

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

Javaハンドブック

プログラミングA

2

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

Microsoft PowerPoint - prog09.ppt

Microsoft PowerPoint - prog09.ppt

プログラミングA

JavaプログラミングⅠ

プログラミング実習I

第 2 章インタフェース定義言語 (IDL) IDL とは 言語や OS に依存しないインタフェース定義を行うためのインタフェース定義言語です CORBA アプリケーションを作成する場合は インタフェースを定義した IDL ファイルを作成する必要があります ここでは IDL の文法や IDL ファイ

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

PowerPoint プレゼンテーション

Prog1_3rd

PowerPoint プレゼンテーション

新・明解Javaで学ぶアルゴリズムとデータ構造

(Microsoft PowerPoint - \223\306\217KJAVA\221\346\202R\224\ ppt)

Javaプログラムの実行手順

教材ドットコムオリジナル教材 0から始めるiアフ リ リファレンス i アプリ簡易リファレンス ver i アプリ Java 独自のメソッド (1)iアプリの命令を使えるようにする import com.nttdocomo.ui.*; (2) 乱数を使う import java.u

I java A

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

文字列操作と正規表現

情報処理Ⅰ

Week 1 理解度確認クイズ解答 解説 問題 1 (4 2 点 =8 点 ) 以下の各問いに答えよ 問題 bit 版の Windows8.1 に Java をインストールする時 必要なパッケージはどれか 但し Java のコンパイルができる環境をインストールするものとする 1. jdk

Transcription:

Java プログラミング Ⅰ 3 回目変数 今日の講義で学ぶ内容 変数とは 変数の使い方 キーボード入力の仕方 変 数 変 数 一時的に値を記憶させておく機能です 変数は 型 ( データ型ともいいます ) と識別子をもちます 2 型 変数に記憶できる値の種類です型は 値の種類に応じて次の 8 種類があり これを基本型といいます 基本型値の種類値の範囲または例 boolean 真偽値 true または false char 16 ヒ ット文字 (16 ヒ ット Unicode) 'a' 'b' byte 8 ヒ ット符号付き整数 - 128 ~ 127 short 16 ヒ ット符号付き整数 - 32768 ~ 32767 int 32 ヒ ット符号付き整数 - 2 31 ~ 2 31 1 long 64 ヒ ット符号付き整数 - 2 63 ~ 2 63 1 float 32 ヒ ット単精度浮動小数点数 約 ±3.4 10 38 ~1.4 10-45 double 64 ヒ ット倍精度浮動小数点数 約 ±1.8 10 308 ~4.9 10-324 C 言語では型ごとに符号なしや符号ありの指定ができますたとえば unsigned int a; や signed long b; です Java では基本型は符号ありのみ ( boolean と char を除く ) です C 言語では各型が扱う値の範囲はプログラム環境ごとに様々です Java では各型が扱う値の範囲は一定です 'a' や 'b' の文字リテラルは Java 内部で 16 ヒ ット Unicode で表現されています char 型は 16 ヒ ット符号なし整数を用いて 16 ヒ ット Unicode を扱います char 型は 16 ヒ ット符号なし整数 (0~65535) を扱うこともできます

識別子 変数につける名前です識別子は 変数を一意に識別します 識別子には 規則があります 使える記号は a~z A~Z 0~9 _( アンタ ーライン ) $( ト ル記号 ) です 最初の記号は数字以外である必要があります 名前の長さは無制限です 大文字と小文字は異なるものとして区別されます 途中に空白 ( スヘ ース ) を含めることはできません 次の Java のキーワード ( すべて小文字 ) は使用できません abstract const final int public throw assert continue finally interface return throws boolean default float long short transient break do for native static true byte double goto new strictfp try case else if null super void catch enum implements package switch volatile char extends import private synchronized while class false instanceof protected this 識別子として a, abc, ab_c, F1 などは良いですが 12a, return, is-a はエラーです 変数の宣言 変数の宣言 変数を使用できるようにするための準備です 変数の型と識別子を指定して次のように記述します 型識別子 ; コード例 int num; 変数の初期化 変数を宣言した際に適当な値を代入しておくことです宣言された変数には予期しない値が入っていることがあります 初期化していない変数を利用しようとすると 変数 は初期化されていない可能性があります というコンパイルエラーがでます

右辺を左辺に代入する演算子 =( イコール ) を用いて次のように記述します 識別子 = 値 ; コード例 num = 0; プログラミング言語では代入と等しいを明確に区別します 代入は =( シンク ルイコール ) で表現します 等しいは ==( タ フ ルイコール ) で表現します ( )==( タ フ ルイコール ) は後の回で紹介します ( ) 数学では代入と等しいを同じ記号 =( イコール ) で表記しますので注意しましょう ソースコード例ソースファイル名 :Sample3_1.java // 変数の宣言と初期化 class Sample3_1 public static void main(string[] args) int num1; // 変数の宣言 num1 = 0; // 変数の初期化 // 変数の宣言と初期化を同時に行う int num2 = 0; // 同一の型の変数を複数同時に宣言する //,( カンマ ) で変数を区切る int num3, num4; // 同一の型の変数を複数同時に宣言 初期化する int num5 = 0, num6 =0; // 同一の型の変数を複数同時に宣言 一部初期化する int num7 = 0, num8, num9 = 0;

変数の利用 変数は宣言された直後から利用することができます 宣言されていない ( 宣言する前に ) 変数を利用しようとすると シンボルを見つけられません というコンパイルエラーがでます 変数の値の変更 変数がもつ値を変更します変数への値の代入や変数の値の上書き 変更が行えます 変数の初期化が終わればそれ以降その変数は初期化で代入した値を保持しています 右辺を左辺に代入する演算子 =( イコール ) を用いて次のように記述します 識別子 = 値 ; コード例 num = 2; または 識別子 1 = 識別子 2; コード例 num = a; 変数の値の出力 変数がもつ値を画面に表示します 変数の識別子を指定して次のように記述します System.out.println( 識別子 ); コード例 System.out.println( num ); System.out.println( ); の他に System.out.print( ); System.out.printf( ); を用いてもよいですが 行末に改行が自動的に入るかどうかに気を付けましょう

ソースコード例ソースファイル名 :Sample3_2.java // 変数の利用 class Sample3_2 public static void main(string[] args) // 変数の宣言と初期化 int num1 = 0; int num2 = 0; ここで 演算子 + は文字列を連結する機能をもちます ( 参照 ) 第 2 回目講義フ リント // 変数の値の出力 System.out.println(" 変数 num1 の値は " + num1 + " です "); System.out.println(" 変数 num2 の値は " + num2 + " です "); // 変数の値を変更 num1 = 5; System.out.println(" 変数 num1 の値を変更しました "); System.out.println(" 変数 num1 の値は " + num1 + " です "); System.out.println(" 変数 num2 の値は " + num2 + " です "); // ほかの変数の値を代入 num2 = num1; System.out.println(" 変数 num1 の値を変数 num2 に代入しました "); ある変数の値を別の変数に代入することもできます System.out.println(" 変数 num1 の値は " + num1 + " です "); System.out.println(" 変数 num2 の値は " + num2 + " です "); 実行画面 >java Sample3_2 変数 num1 の値は 0 です 変数 num2 の値は 0 です 変数 num1 の値を変更しました 変数 num1 の値は 5 です 変数 num2 の値は 0 です 変数 num1 の値を変数 num2 に代入しました 変数 num1 の値は 5 です 変数 num2 の値は 5 です

キーボード入力の基本形 ( 文字列を入力する場合 ) キーボードからの文字列入力を行うコードは以下のような形です ソースファイル名 : クラス名.java import java.io.*; class クラス名 C 言語の #include に対応します キーボード入力の機能が使用可能になります キーボード入力をす る前に一度だけ記述 public static void main(string[] args) throws IOException します BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); : String str; str = br.readline(); String str; 文字列を扱う String 型の変数を宣言しますキーボードから入力される文字列を代入するために用います : br.readline(); ユーザからの入力を待つ状態で止まります 文字列をキーボードから入力し Enter キーを押す とその文字列が代入演算子 = により変数 str に代 入されます String 型 文字列を代入できる型です "Hello" や " こんにちは " など文字列リテラルを代入することができます 変数の基本型には boolean char byte short int long float double の 8 種類があります String 型は基本型ではなく 参照型とよばれる型ですこれらの違いは後の回で詳しく解説しますここでは 基本型と同様に考えてください

ソースコード例ソースファイル名 :Sample3_3.java // キーボードから文字列を入力する import java.io.*; class Sample3_3 public static void main(string[] args) throws IOException BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); // キーボードからの文字列を受け取る変数の宣言 String str1, str2; // キーボードからの入力を促すメッセージと入力 System.out.println("1 つ目の文字列を入力してください "); str1 = br.readline(); System.out.println("2 つ目の文字列を入力してください "); str2 = br.readline(); // 読込まれた文字列を表示する System.out.println(str1 + " と "+ str2 + " が入力されました "); 実行画面 >java Sample3_3 1 つ目の文字列を入力してください 楽しい 2 つ目の文字列を入力してください Java 楽しいと Java が入力されました

キーボード入力の基本形 ( 整数を入力する場合 ) キーボードからの整数入力を行うコードは以下のような形です ソースファイル名 : クラス名.java import java.io.*; C 言語の #include に対応します キーボード入力の機能が使用可能になります class クラス名 る前に一度だけ記述 public static void main(string[] args) throws IOException します BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); int num; : 整数を扱う int 型の変数を宣言します int num; num = Integer.parseInt(br.readLine( )); キーボード入力をす : Integer.parseInt(br.readLine( )); ユーザからの入力を待つ状態で止まります文字列をキーボードから入力し Enter キーを押すと入力された文字列が int 型の数値に変換され 代入演算子 =により int 型の変数 num に代入されます この部分は変換したい型に応じて次のように使い分けます ( 入力したいデータ型 ) ( コード ) boolean 型 byte 型 short 型 int 型 long 型 float 型 double 型 Boolean.parseBoolean( ); Byte.parseByte( ); Short.parseShort( ); Integer.parseInt( ); Long.parseLong( ); Float.parseFloat( ); Double.parseDouble( ); さらに 入力された値を代入する変数の型も合わせて変更します たとえば 実数を入力したい場合は double d; d = Double.parseDouble(br.readlLine( )); とすればよいです

ソースコード例ソースファイル名 :Sample3_4.java // キーボードから整数を入力する import java.io.*; class Sample3_4 public static void main(string[] args) throws IOException BufferedReader br; br = new BufferedReader(new InputStreamReader(System.in)); // キーボードからの入力を促すメッセージ System.out.println(" 整数を入力してください "); // キーボードから整数を読込む int num; num = Integer.parseInt(br.readLine()); // 読込まれた整数を表示する System.out.println(num + " が入力されました "); 実行画面 >java Sample3_4 整数を入力してください 123 123 が入力されました

Sample3_4 実行時に数値を入力するのを間違えて文字を入力したら? 実行画面 >java Sample3_4 整数を入力してください a Exception in thread "main" java.lang.numberformatexception: For input string: "a" at java.lang.numberformatexception.forinputstring(numberformatexception.java:48) at java.lang.integer.parseint(integer.java:447) at java.lang.integer.parseint(integer.java:497) at Sample3_4.main(Sample3_4.java:20) Java ではこのような実行時におけるエラーを処理する 例外処理 という枠組みが備えられています ここでは詳細にはふれず Java プログラミング Ⅱ で詳しく解説します キーボード入力のその他の方法 ソースコード例ソースファイル名 :Ext3_1.java // キーボードから数値を直接読み込む import java.util.*; C 言語の #include に対応します 以下のキーボード入力の機能が使用可能になります class Ext3_1 public static void main(string[] args) Scanner s; s = new Scanner(System.in); キーボード入力をする前に一度だけ 記述します // こちらの方法では以下の例のように int 型整数 long 型整数 // float 型実数 double 型実数を変数に読み込むことができます int i = s.nextint(); long l = s.nextlong(); ユーザからの入力を待つ状態で止まります float f = s.nextfloat(); 文字列をキーボードから入力し Enter キーを押 double d = s.nextdouble(); すとその文字列が指定の型に変換されて 代入演 String str = s.next(); 算子 =により各変数に代入されます // 変数の中身をみてみましょう System.out.println("i="+i+", l="+l+", f="+f+", d="+d+", str="+str);

実行画面 >java Ext3_1 12 2007 12.4 3.1415 Hello i=12, l=2007, f=12.4, d=3.1415, str=hello