基本型 †
型には大別して,基本型(primitive type)と参照型(reference type)があります.
- 基本型:論理値および数値を表す型
- 参照型:クラス,インターフェース,配列や,列挙型を表す型 (テキスト上巻9章〜)
ここでは,基本型について行います.
型名 | 意味 | 最小値 | 最大値 | 解説 |
boolean | 論理型 | | | |
char | 整数型(文字型) | 0 | 65535 | 符号なし16ビット |
byte | 整数型 | -128 | 128 | 符号付き8ビット |
short | 整数型 | -32768 | 32767 | 符号付き16ビット |
int | 整数型 | -2147483648 | 2147483647 | 符号付き32ビット |
long | 整数型 | -9223372036854775808 | 9223372036854775807 | 符号付き64ビット |
float | 単精度浮動小数点型 | |
double | 倍精度浮動小数点型 | |
変数 †
Var.java
1
2
3
4
5
6
7
| -
-
|
|
|
!
!
| public class Var {
public static void main(String[] args) {
int x = 10;
int y = 20;
System.out.println(x+y);
}
}
|
- 計算結果を2で割るプログラムにしてみましょう.
- 変数をdoubleにしてみましょう.
- 文字型変数 char を使ってみましょう.
入力をともなうプログラム †
WhatYourName.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
-
-
|
|
-
|
|
-
|
!
!
!
| import java.io.*;
public class WhatYourName{
public static void main(String[] args){
System.out.println("What Your Name !: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String line = reader.readLine();
System.out.println(line + "さん,こんにちは");
}catch (IOException e){
System.out.println(e);
}
}
}
|
WhatYourAge.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
-
-
|
|
-
|
|
|
-
|
-
|
!
!
!
| import java.io.*;
public class WhatYourAge{
public static void main(String[] args){
System.out.println("何歳ですか !: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String line = reader.readLine();
int age = Integer.parseInt(line);
System.out.println(age + "才ですね.");
}catch (IOException e){
System.out.println(e);
}catch (NumberFormatException e){
System.out.println("正しくありません");
}
}
}
|
if文 †
もし,・・・ならば, †
1
2
3
4
5
| -
|
!
| if (条件式) {
条件が成り立つ場合の処理(条件式がtrueのときの処理)
}
条件式は,boolean型.trueまたは,false
|
例:Stno.java †
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
|
-
-
|
|
-
|
|
|
|
-
|
!
|
-
|
!
!
!
| import java.io.*;
public class Stno {
public static void main(String[] args) {
System.out.println("学籍番号の先頭2桁をいれてください: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String no = reader.readLine();
int nen = Integer.parseInt(no);
System.out.println(nen + "ですね.");
if (nen > 10){
System.out.println("1年生ですね.");
}
}catch (IOException e){
System.out.println(e);
}
}
}
|
もし,・・・ならば,・・・さもなくば. †
1
2
3
4
5
| -
|
-
|
!
| if (条件式) {
条件が成り立つ場合の処理A(条件式がtrueのときの処理A)
} else {
条件が成り立たなかった場合の処理B(条件式がfalseのときの処理B)
}
|
if文の連鎖 †
1
2
3
4
5
6
7
8
9
| -
|
-
|
|
-
|
|
!
| if (条件式1) {
条件式1がtrueのときの処理
} else if (条件式2) {
条件式1がfalse,
条件式2がtrueのときの処理
} else {
条件式1がfalse,
条件式2がfalseのときの処理
}
|
例:Stno.java †
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
-
-
|
|
-
|
|
|
|
-
|
-
|
-
|
-
|
-
|
!
|
-
|
!
!
!
| import java.io.*;
public class Stno {
public static void main(String[] args) {
System.out.println("学籍番号の先頭2桁をいれてください: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String no = reader.readLine();
int nen = Integer.parseInt(no);
System.out.println(no + "ですね.");
if (nen > 11){
System.out.println("1年生ですね.");
}else if (nen > 9){
System.out.println("2年生ですね.");
}else if (nen > 8){
System.out.println("3年生ですね.");
}else if (nen > 7){
System.out.println("4年生ですね.");
}else{
System.out.println("その他の学年ですね");
}
}catch (IOException e){
System.out.println(e);
}
}
}
|
switch文 †
1
2
3
4
5
6
7
8
9
10
| -
|
|
|
|
|
|
|
|
!
| swhitch (式) {
case 定数式1:
処理1
break;
case 定数式2:
処理2
break;
default:
break;
}
|
例:Stno2.java †
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
-
-
|
|
-
|
|
|
|
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
!
|
|
-
|
!
!
!
| import java.io.*;
public class Stno2 {
public static void main(String[] args) {
System.out.println("学籍番号の先頭2桁をいれてください: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String no = reader.readLine();
int nen = Integer.parseInt(no);
System.out.println(no + "ですね.");
switch(nen){
case 12:
System.out.println("1年生ですね.");
break;
case 11:
System.out.println("2年生ですね.");
break;
case 10:
System.out.println("3年生ですね.");
break;
case 9:
System.out.println("4年生ですね.");
break;
default:
System.out.println("その他の学年ですね");
break;
}
}catch (IOException e){
System.out.println(e);
}
}
}
|
for文 †
1
2
3
| -
|
!
| for (初期化; 条件式; 次の一歩) {
繰り返す処理
}
|
例:Printn.java †
1
2
3
4
5
6
7
8
| -
-
-
|
!
|
!
!
| public class Printn {
public static void main(String[] args) {
for(int i =0; i< 3; i++){
System.out.println(i);
}
System.out.println("end");
}
}
|
例:Printn3.java †
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
|
-
-
|
|
-
|
|
|
|
|
-
|
!
|
|
-
|
!
!
!
| import java.io.*;
public class Printn3 {
public static void main(String[] args) {
System.out.println("何回まで?: ");
BufferedReader reader = new BufferedReader (new InputStreamReader(System.in));
try{
String no = reader.readLine();
int n = Integer.parseInt(no);
System.out.println(no + "ですね.");
for(int i =0; i< n; i++){
System.out.println(i);
}
System.out.println("end");
}catch (IOException e){
System.out.println(e);
}
}
}
|
while文 †
1
2
3
| -
|
!
| while (条件式) {
繰り返す処理
}
|
例:Printn2.java †
1
2
3
4
5
6
7
8
9
10
| -
-
|
-
|
|
!
|
!
!
| public class Printn2 {
public static void main(String[] args) {
int i = 0;
while(i<3){
System.out.println(i);
i++;
}
System.out.println("end");
}
}
|