public /*これもコメントです*/ class Test01 { // Test01.java public static void main(String args[]) { // mainの記述 System.out.println("コメント"); cmnt(); // cmntスレッドの呼び出し System.out.println("¥n¥n文字列出力"); smp1(); System.out.println("¥n¥n変数宣言と数値出力"); smp2(); System.out.println("¥n¥n繰り返し処理"); smp3(); System.out.println("¥n¥n条件処理"); smp4(); } public static void cmnt() { // mainの記述 System.out.println("My first Java."); // 文字列出力する } public static void smp1() { System.out.print("AAAAA"); System.out.print("BBBBB¥nCCCCC¥n"); System.out.println("DDDDD"); System.out.println("EEEEE¥nFFFFF¥n¥nGGGGG"); } public static void smp2() { int a, b, sum; a = 100; b = 200; sum = a + b; System.out.print("a="); // 文字列だけ出力 System.out.println(a); // 数値だけ出力 System.out.println("b=" + b); // 文字列と数値を出力 System.out.println("a+b=" + sum); // 結果を出力 System.out.println("a+b=" + (a+b)); // 直接計算させる } public static void smp3() { int i, sum; for (i=1; i<=5; i++) System.out.println("i=" + i); sum = 0; for (i=1; i<=5; i++) { sum = sum + i; System.out.println("sum=" + sum); } } public static void smp4() { int i; for (i=1; i<=5; i++) { System.out.print("i=" + i); if (i < 3) System.out.println(" 3未満です"); else System.out.println(" 3以上です"); } } } |
コメント My first Java. 文字列出力 AAAAABBBBB CCCCC DDDDD EEEEE FFFFF GGGGG 変数宣言と数値出力 a=100 b=200 a+b=300 a+b=300 繰り返し処理 i=1 i=2 i=3 i=4 i=5 sum=1 sum=3 sum=6 sum=10 sum=15 条件処理 i=1 3未満です i=2 3未満です i=3 3以上です i=4 3以上です i=5 3以上です |
[3]考察
・コメント
Javaプログラムでは2つのコメントを使うことができる。まず1つは範囲型コメントである。プログラム中に/*
があると次に*/に出会うまでのテキストはコメントと見なされる。この範囲型コメントは複数行にまたがっても
かまわない。2つめは1行型コメントです。プログラムの中に"//"があるとそこから行末までがコメントになる。
・文字列出力
文字列出力メソッドはReport#1でも記述したSystem.out.print("")(文字列出力後改行しない)とSystem.out.println
("")(文字列出力後改行する)がある。""内の文字列中に¥nがあるとその位置で改行する。¥n¥nがあると
空白行になる。
・変数宣言と数値出力
int a, b, sum; で3つのint型の変数を宣言している。詳しくはデータ型の考察で。そしてaに100、bに200、sumにaとb
を加算したものを入れる。あとはSystem.out.prinlntで出力。
・繰り返し処理
for文は変数が1から(i=1)、1ずつ増加して(i++)、5以下になるまで(i<=5)System.out.printlnを繰り返し実行。
・条件処理
もしiの値が3未満なら(if (i < 3))System.out.println(" 3未満です");を実行、そうでないときは(else)
System.out.println(" 3以上です");を実行する。
その2:変数と定数
[1]プログラム
public class Test02 { // Test02.java public static void main(String args[]) { char ch; boolean bdt; int idt; long ldt; float fdt; double ddt; String ss; final int CNST1 = 1234; // final定数 ch = 'A'; // 半角文字 System.out.println("文字=" + ch + " code=" + (int)ch); ch = '亜'; // 全角文字 System.out.println("文字=" + ch + " code=" + (int)ch); bdt = true; System.out.println("bdt = " + bdt); idt = 1234567890; System.out.println("idt = " + idt); ldt = 1234567890123456789L; // Lはlong値を示す System.out.println("ldt = " + ldt); fdt = 123.456F; // Fはfloat値を示す System.out.println("fdt = " + fdt); ddt = 123.456789012345; System.out.println("ddt = " + ddt); idt = 022; // 8進数の22 System.out.println("8進22 = " + idt); idt = 0x22; // 16進数の22 System.out.println("16進22 = " + idt); ddt = 5.67e4; // 指数表現の56700 System.out.println("指数 = " + ddt); ch = '¥n'; // エスケープ文字 System.out.println("改行文字コード = " + (int)ch); ss = "AAAA¥tBBBB"; // 文字列定数(エスケープ文字を含む) System.out.println("ss = " + ss); System.out.println("CNST1 = " + CNST1); } } |
文字=A code=65 <=半角文字 文字=亜 code=20124 <=全角文字 bdt = true <=論理定数 idt = 1234567890 <=int型 ldt = 1234567890123456789 <=Lを付与したlong値定数 fdt = 123.456 <=Fを付与したfloat値定数 ddt = 123.456789012345 <=double型 8進22 = 18 <=8進数の22 16進22 = 34 <=16進数の22 指数 = 56700.0 <=5.67e4 改行文字コード = 10 <=エスケープ文字¥n ss = AAAA BBBB <=¥t(タブ)を含む文字列 CNST1 = 1234 <=final定数 |
データ型 |
説明 |
表現範囲 |
boolean | 1bit 真偽値 | trueまたはfalse |
char | 16bit Unicode文字 | ¥u0000~¥uFFFF |
byte | 8bit 符号付き文字 | -128~127 |
short | 16bit 符号付き文字 | -32768~32767 |
int | 32bit 符号付き文字 | -2147483648~2147483647 |
long | 64bit 符号付き文字 | -9223372036854775808~9223372036854775807 |
float | 32bit 浮動小数点 | 単精度の浮動小数点 |
double | 64bit 浮動小数点 | 倍精度の浮動小数点 |
・定数
定数には数値定数、文字定数、文字列定数がある。int a; a = 12; でaは変数だが、12は定数である。定数は
その名の通り「定まった数」を表現する。これは数値定数である。文字を'で囲むと文字定数になる。文字定数は
それぞれの文字の持っている文字コードを表現する。また文字列を"で囲むと文字列定数になる。
その3:式と演算子
[1]プログラム
public class Test06 { // Test06.java public static void main(String args[]) { System.out.println("算術演算子"); comp1(); System.out.println("¥n¥n関係演算子"); comp2(); System.out.println("¥n¥n論理演算子"); comp3(); System.out.println("¥n¥nインクリメント/デクリメント演算子"); comp4(); } public static void comp1() { int a, b, c; double f, g, h; a = 100; System.out.println("a = " + a); b = 30; System.out.println("b = " + b); c = a + b; System.out.println("a+b = " + c); // 加算 c = a - b; System.out.println("a-b = " + c); // 減算 c = a * b; System.out.println("a*b = " + c); // 乗算 c = a / b; System.out.println("a/b = " + c); // 整数除算 c = a % b; System.out.println("a%b = " + c); // 整数剰余 f = 90.0; System.out.println("f = " + f); g = 40.0; System.out.println("g = " + g); h = f / g; System.out.println("f/g = " + f/g); // 浮動小数点数除算 } public static void comp2() { int a; for (a=1; a<=5; a++) { System.out.println("--------" + a); if (a < 2) System.out.println("2未満"); if (a >= 4) System.out.println("4以上"); if (a == 3) System.out.println("3である"); if (a != 3) System.out.println("3ではない"); } } public static void comp3() { int a; for (a=1; a<=5; a++) { System.out.println("--------" + a); if (a>=2 && a<=4) System.out.println("2以上かつ4以下"); if (a<2 || a>4) System.out.println("2未満または4より大"); if (!(a==1 || a==3)) System.out.println("1または3、ではない"); } } public static void comp4() { int dt[] = {100, 200, 300}; // 配列を確保 int n; // ++演算子を使わないときの記述 n = 0; System.out.println(dt[n]); // dt[0]を表示 n = n +1; System.out.println(dt[n]); // dt[1]を表示 n = n +1; System.out.println(dt[n]); // dt[2]を表示 // ++演算子を使ったときの記述 n = 0; System.out.println(dt[n++]); // dt[0]を表示 System.out.println(dt[n++]); // dt[1]を表示 System.out.println(dt[n++]); // dt[2]を表示 // --演算子を使う n = 5; while (--n >= 0) { // n回繰り返す System.out.println("n=" + n); } } } |
算術演算子 a = 100 b = 30 a+b = 130 a-b = 70 a*b = 3000 a/b = 3 a%b = 10 f = 90.0 g = 40.0 f/g = 2.25 関係演算子 --------1 2未満 3ではない --------2 3ではない --------3 3である --------4 4以上 3ではない --------5 4以上 3ではない 論理演算子 --------1 2未満または4より大 --------2 2以上かつ4以下 1または3、ではない --------3 2以上かつ4以下 --------4 2以上かつ4以下 1または3、ではない --------5 2未満または4より大 1または3、ではない インクリメント/デクリメント演算子 100 200 300 100 200 300 n=4 n=3 n=2 n=1 n=0 |
演算子 |
説明 |
使用例 |
+ |
加算 |
a = b + c; |
- |
減算 |
a = b - c; |
* |
乗算 |
a = b * c; |
/ |
除算 |
a = b / c; |
% |
剰余 |
a = b % c; |
演算子 |
説明 |
使用例 |
< |
小さい |
if (a < 10) |
<= |
小さいか等しい |
if(a <= 10) |
> |
大きい |
if(a > 10) |
>= |
大きいか等しい |
if(a >= 10) |
== |
等しい |
if(a == 10) |
!= |
等しくない |
if (a != 10) |
演算子 |
説明 |
使用例 |
! |
否定 |
if (!flg) |
&& |
論理積(かつ) |
if (10<a && a<20) |
|| |
論理和(または) |
if (a==2 || a==4) |
演算子 |
説明 |
使用例 |
++ |
1加算 |
++a; または a++; |
-- |
1減算 |
--a; または a--; |