プログラミング 第2回

プログラミング 第2回
「変数と型」
「対話するプログラム」
[email protected]
プログラミング第2回
1
Variables (変数)とは
• Variables 何かを入れる箱
• 変数の利用手順
– Variable declaration (変数宣言)。変数を作るこ
と。
– Substitution (代入)。値を入れること。
– Reference (参照)。値を見ること。
• 変数には型がある。
• 変数は宣言時に初期化できる。
プログラミング第2回
2
Var1.java(List 3-1, p.56)
public class Var1 {
public static void main(String[] args) {
int x;
//宣言
x=4;
//代入
System.out.println(2*x+3);
//参照
}
}
プログラミング第2回
3
Var2.java(List 3-2, p.57)
public class Var2{
public static void main(String[] args) {
int x=15;
//宣言および初期化
int y=32;
//宣言および初期化
System.out.println((x+y)/2); //参照
}
}
プログラミング第2回
4
Var3.java(List 3-3, p.57)
public class Var3{
public static void main(String[] args) {
double x=15.0;
double y=32.0;
System.out.println((x+y)/2); //小数の演算
}
}
プログラミング第2回
5
Var4.java(List 3-4, p.59)
public class Var4{
public static void main(String[] args) {
char a='A';
char alpha='α';
char hiroshi='浩';
System.out.println("変数aの値は" + a);
System.out.println("変数alphaの値は"
+ alpha);
System.out.println("変数hiroshiの値は"
+ hiroshi);
}
}
プログラミング第2回
6
基本型と参照型
• Primitive type(基本型)
– データそのものが格納されている変数
– boolean, char, byte, short, int, long, float, double,
void
• Reference type(参照型)
– データそのものでなく,データ(オブジェクト)への
ポインタが格納されている変数
– 参照型の変数にはデータは格納されていない!
プログラミング第2回
7
HowOldAreYou.java(1)
import java.io.*;
public class HowOldAreYou {
public static void main(String[] args){
System.out.println(
"あなたの名前を入力してください。");
BufferedReader reader
= new BufferedReader(
new InputStreamReader(System.in),
1);
プログラミング第2回
8
HowOldAreYou.java(2)
try{
String line=reader.readLine();
System.out.println(line+"さん,こんにちは。
");
System.out.println("年齢を入力してください。
");
line = reader.readLine();
int age = Integer.parseInt(line);
System.out.println(
“いま” + age + "歳とすると,10年後は"
+ (age+10) +"歳ですね。");
プログラミング第2回
}
9
HowOldAreYou.java(3)
}catch(IOException e){
System.out.println(e);
}catch(NumberFormatException e){
System.out.println("年齢が正しくありません。
");
}
}
}
プログラミング第2回
10
実行結果(その1)
JavaLessons> java HowOldAreYou
あなたの名前を入力してください。
Yukita
Yukitaさん,こんにちは。
年齢を入力してください。
18
今18歳とすると,10年後は28歳ですね。
プログラミング第2回
11
実行結果(その2)
JavaLessons> java HowOldAreYou
あなたの名前を入力してください。
Yukita
Yukitaさん,こんにちは。
年齢を入力してください。
abc
年齢が正しくありません。
プログラミング第2回
12
オブジェクトへのメッセージ
readLineメッセージ
reader:BufferedReader
読み込んだ
1行
line
String型の変数
端末装置からの入力を担当
するBufferedReader型のオブ
ジェクト
readLineは受付可能メッセー
ジの1つで,BufferedReader
クラスのメソッドとも呼ばれる。
プログラミング第2回
13
文字列を整数に変換する
• String型の変数に“2002”というStringオブ
ジェクトを格納(実際は参照)した場合,数
値としての2002とは違う。
• Stringを整数値に変換することができる。
プログラミング第2回
14
Integerクラスへのメッセージ
parseメッセージ
Stringを引数にとる
:Integer
数値に直して
age
parseは受付可能メッセージ
の1つで,クラスメソッドとも
呼ばれる。
int型の変数
プログラミング第2回
15
クラスとインスタンス(オブジェクト)
:classA
クラスメソッド
:classB
その他のインスタンス
1: new
instance101:classB
2: 生みおとす。
instance102:classB
someone:aotherclass
3.. :その他のインスタンス
メソッド
プログラミング第2回
16
オブジェクトへのメッセージの送り方
...
ClassA
ClassB
タ);
var1 = new ClassA();
var2 = new ClassB(必要あればデー
...
var1.method1();
var2.method2(引数, ...);
var4 = var3.method3(引数);
プログラミング第2回
17
try と catch で例外処理
try {
様々な処理
.....
} catch(特定のエラー) {
このエラーへの対応
} catch(別のエラー){
このエラーへの対応
}
プログラミング第2回
18
課題
• 問題3-1,3-2
• 余力のある人は,問題3-3
プログラミング第2回
19