================================================================================

	Load of Developers Java Launguage   ---- Vol. 1         I-ichirow Suzuki

================================================================================


Index 	Vol.1
	1.Javaの基礎
	2.クラスとメソッド
	3.Javaの制御ステートメントの概要
	4.制御ステートメントと演算子

		Vol.2
		1.クラスの作成
		2.継承

		Vol.3
		1.インターフェイスとパッケージ
		2.例外

		Vol.4
		1.マルチスレッド
		2.Javaクラスライブラリの初歩
		3.入出力
		4.ネットワーク

		Vol.5
		1.アプレット
		2.イベント処理
		3.ツール

////////////////////////////////////////////////////////////////////////////////
// 初めてのJavaアプリケーション
class Example1 {
	public static void main(String args[]) {
		System.out.println("This is the output from Example1");
	}
}
////////////////////////////////////////////////////////////////////////////////
class Example2 {
	 public static void main(String args[]) {
		 System.out.println("This is on the first line.");
		 System.out.println("This is on the second line.");
	 }
}
////////////////////////////////////////////////////////////////////////////////
// 変数と代入
class DisplayFloat {
	public static void main(String args[]) {
		float price;
		price = 45.35f;
		System.out.print("The price is ");
		System.out.println(price);
	}
}
////////////////////////////////////////////////////////////////////////////////
class OutputVariables {
	public static void main(String args[]) {
		char ch = 'X';
		short s = 456;
		double d = 123.009;
		System.out.println("ch is " + ch);
		System.out.println("s is " + s);
		System.out.println("d is " + d);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 文字列とキャラクタ
class LincolnQuote {
	public static void main(String args[]) {
		String s = "Lincoln said: " + "\"Four score and seven years ago\"";
		System.out.println(s);
	}
}
////////////////////////////////////////////////////////////////////////////////
 class Concatenation {
	 public static void main(String args[]) {
		 System.out.println("My book " + "will teach you " + "about Java programming");
	 }
}
////////////////////////////////////////////////////////////////////////////////
// 文字列の初期化
 class StringVariables {
	 public static void main(String args[]) {
		 String s1 = "My book teaches ";
		 String s2 = "you how to ";
		 String s3 = "use Java";
		 System.out.println(s1 + s2 + s3);
	 }
}
////////////////////////////////////////////////////////////////////////////////
// 算術演算子と式
class Arithmetic {
	public static void main(String args[]) {
		System.out.print(5/2);
		System.out.print(" " + 5%2);
		System.out.print(" " + 4/2);
		System.out.println(" " + 4%2);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 単項演算子
class Unary {
	public static void main(String args[]) {
		int i = 10;
		i = -i;
		System.out.println("This is " + i);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 式における型変換
class TypePromotion {
	public static void main(String args[]) {
		int i;
		float f;
		i = 10;
		f = 23.25f;
		System.out.println(i * f);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 代入における型変換
class WideningConversion {
	public static void main(String args[]) {
		byte b = 127;
		int i;
		i = b;
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
class BadAssignment {
	public static void main(String args[]) {
		byte b;
		int i = 127;
		b = i;	// Error  b = (byte)i ;
		System.out.println(b);
	}
}
////////////////////////////////////////////////////////////////////////////////
class GoodAssignment {
	public static void main(String args[]) {
		byte b;
		int i = 127;
		b = (byte)i;
		System.out.println(b);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 縮小変換
class NarrowingConversion {
	public static void main(String args[]) {
		byte b;
		int i = 258;
		b = (byte)i;
		System.out.println(b); // 2を表示する
	}
}
////////////////////////////////////////////////////////////////////////////////
class Truncation {
	public static void main(String args[]) {
		float f = 23.9999f;
		int i = (int)f;
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 代入における型変換
class CharAssignment {
	public static void main(String args[]) {
		char ch = 'A';
		int i = ch;
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
class AssignmentProblem {
	public static void main(String args[]) {
		byte b1 = 1;
		byte b2 = 2;
		byte b3 = b1 * b2; // Error b3 = (byte)b1 * (byte)b2 ;
		System.out.println(b3);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 1次元配列
class OneDimensionArray {
	public static void main(String args[]) {
		// 配列を宣言して領域を割り当てる
		int myarray[] = new int[4];
		// 要素を初期化する
		myarray[0] = 33;
		myarray[1] = 71;
		myarray[2] = -16;
		myarray[3] = 45;
		// 要素数を表示する
		System.out.println("myarray.length = " + 	myarray.length);
		// 要素を表示する
		System.out.println(myarray[0]);
		System.out.println(myarray[1]);
		System.out.println(myarray[2]);
		System.out.println(myarray[3]);
	}
}
////////////////////////////////////////////////////////////////////////////////
 class ArrayInitializer {
	 public static void main(String args[]) {
		 // 配列を宣言し,領域を割り当て,初期化する
		 int myarray[] = { 33, 71, -16, 45 };
		 // 要素数を表示する
		 System.out.println("myarray.length = " + 	 myarray.length);
		 // 要素を表示する
		 System.out.println(myarray[0]);
		 System.out.println(myarray[1]);
		 System.out.println(myarray[2]);
		 System.out.println(myarray[3]);
	}
}
////////////////////////////////////////////////////////////////////////////////
class ArrayReference {
	public static void main(String args[]) {
		// array1を宣言し,領域を割り当てる
		float array1[] = new float[3];
		// array1を初期化する
		array1[0] = -3.45f;
		array1[1] = 7.7f;
		array1[2] = 101.56f;
		// array2を宣言し,領域を割り当てる
		float array2[] = new float[3];
		// array2にarray1と同じ配列を参照させる
		array2 = array1;
		// array1の要素を表示する
		System.out.println("array1:");
		System.out.println(array1[0]);
		System.out.println(array1[1]);
		System.out.println(array1[2]);
		// array2の要素を表示する
		System.out.println("array2:");
		System.out.println(array2[0]);
		System.out.println(array2[1]);
		System.out.println(array2[2]);
		// 要素を変更する
		array2[1] = 100;
		// array1の要素を表示する
		System.out.println("array1:");
		System.out.println(array1[0]);
		System.out.println(array1[1]);
		System.out.println(array1[2]);
		// array2の要素を表示する
		System.out.println("array2:");
		System.out.println(array2[0]);
		System.out.println(array2[1]);
		System.out.println(array2[2]);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 多次元配列
class TwoDimensionArray {
	public static void main(String args[]) {
		// 配列を宣言して領域を割り当てる
		int myarray[][] = new int[3][2];
		// 要素を初期化する
		myarray[0][0] = 33;
		myarray[0][1] = 71;
		myarray[1][0] = -16;
		myarray[1][1] = 45;
		myarray[2][0] = 99;
		myarray[2][1] = 27;
		// 要素数を表示する
		System.out.println("myarray.length = " + 	myarray.length);
		// 要素を表示する
		System.out.println(myarray[0][0]);
		System.out.println(myarray[0][1]);
		System.out.println(myarray[1][0]);
		System.out.println(myarray[1][1]);
		System.out.println(myarray[2][0]);
		System.out.println(myarray[2][1]);
	}
}
////////////////////////////////////////////////////////////////////////////////
class TwoDimensionArrayInitializer {
	public static void main(String args[]) {
		// 配列を宣言し,領域を割り当て,初期化する
		int myarray[][] = {
			 {33, 71},
			 {-16, 45},
			 {99, 27}
		};
		// 要素数を表示する
		System.out.println("myarray.length = " + 	myarray.length);
		// 要素を表示する
		System.out.print(myarray[0][0] + " ");
		System.out.println(myarray[0][1]);
		System.out.print(myarray[1][0] + " ");
		System.out.println(myarray[1][1]);
		System.out.print(myarray[2][0] + " ");
		System.out.println(myarray[2][1]);
	}
}
////////////////////////////////////////////////////////////////////////////////
class UnevenTwoDimensionArrayInitializer {
	public static void main(String args[]) {
		// 配列を宣言し,領域を割り当て,初期化する
		int myarray[][] = {
			{ 33, 71 },
			{ -16, 45, 50, -7 },
			{ 99 }
		};
		// 要素を表示する
		System.out.print(myarray[0][0] + "  ");
		System.out.println(myarray[0][1]);
		System.out.print(myarray[1][0] + "  ");
		System.out.print(myarray[1][1] + "  ");
		System.out.print(myarray[1][2] + "  ");
		System.out.println(myarray[1][3]);
		System.out.println(myarray[2][0]);
	}
}
////////////////////////////////////////////////////////////////////////////////
// 静的メソッドと静的変数(クラスそのものに結びつけられる)
class MathDemo {
	public static void main(String args[]) {
		System.out.println("Max of -8 and -4 is " + Math.max(-8, -4));
		System.out.println("Min of -8 and -4 is " + Math.min(-8, -4));
		System.out.println("Absolute value of -18 is " + Math.abs(-18));
		System.out.println("The ceiling of 45.7 is " + Math.ceil(45.7));
		System.out.println("The floor of 45.7 is " + Math.floor(45.7));
	}
}
////////////////////////////////////////////////////////////////////////////////
class EPI {
	public static void main(String args[]) {
		System.out.println("E = " + Math.E);
		System.out.println("PI = " + Math.PI);
	}
}
////////////////////////////////////////////////////////////////////////////////
class AreaCircumference {
	public static void main(String args[]) {
		double radius = 5;
		double area = Math.PI * radius * radius;
		double circumference = 2 * Math.PI * radius;
		System.out.println("Radius is " + radius);
		System.out.println("Area is " + area);
		System.out.println("Circumference is " +	 circumference);
	}
}
////////////////////////////////////////////////////////////////////////////////
// インスタンスメソッドとインスタンスメンバ(オブジェクトに結びつけられる)
class First10Chars {
	public static void main(String args[]) {
		String s = "One Two Three Four Five Six Seven";
		String substring = s.substring(0, 10);
		System.out.println(substring);
	}
}
////////////////////////////////////////////////////////////////////////////////
class DollarAmount {
	public static void main(String args[]) {
		String s1 = "The total cost is $45.67";
		int i1 = s1.indexOf('$');
		String s2 = s1.substring(i1);
		System.out.println(s2);
	}
}
////////////////////////////////////////////////////////////////////////////////
// Integerクラス
class StringToInt {
	public static void main(String args[]) {
		String s = "125";
		Integer obj = Integer.valueOf(s);
		int i = obj.intValue();
		i += 10;
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
class StringToInt2 {
	public static void main(String args[]) {
		String s = "125";
		int i = Integer.valueOf(s).intValue();
		i += 10;
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
class BinaryHexOctal {
	public static void main(String args[]) {
		int i = 11;
		System.out.println("Binary is " + 	Integer.toBinaryString(i));
		System.out.println("Hex is " +		Integer.toHexString(i));
		System.out.println("Octal is " +	Integer.toOctalString(i));
	}
}
////////////////////////////////////////////////////////////////////////////////
// new演算子
class IntegerConstructors {
	public static void main(String args[]) {
		Integer iobj1 = new Integer(5);
		Integer iobj2 = new Integer("6");
		int i1 = iobj1.intValue();
		int i2 = iobj2.intValue();
		int sum = i1 + i2;
		System.out.println("i1 = " + i1);
		System.out.println("i2 = " + i2);
		System.out.println("sum = " + sum);
	}
}
////////////////////////////////////////////////////////////////////////////////
class MultipleReferences {
	public static void main(String args[]) {
		Integer obj1 = new Integer(5);
		Integer obj2 = obj1;
		Integer obj3 = obj1;
		System.out.println(obj1);
		System.out.println(obj2);
		System.out.println(obj3);
	}
}
////////////////////////////////////////////////////////////////////////////////
class MultipleObjects {
	public static void main(String args[]) {
		Integer obj = new Integer(5);
		System.out.println(obj);
		obj = new Integer(6);
		System.out.println(obj);
		obj = new Integer(7);
		System.out.println(obj);
	}
}
////////////////////////////////////////////////////////////////////////////////
// ガーベジコレクション
class GarbageCollectionDemo {
	public static void main(String args[]) {
		Integer i = new Integer(5);
		System.out.println(i);
		i = new Integer(6);
		System.out.println("Integer(5) can be recycled.");
		System.out.println(i);
	}
}
////////////////////////////////////////////////////////////////////////////////
class DoubleDemo {
	public static void main(String args[]) {
		// 変数を宣言して初期化する
		double d1 = 0;
		double d2 = 0;
		// 除算
		double d3 = d1/d2;
		System.out.println(d3);
		// 無限とNaNのテスト
		System.out.println(Double.isInfinite(d3));
		System.out.println(Double.isNaN(d3));
		// 最大,最小,無限の各値を表示する
		System.out.println(Double.MAX_VALUE);
		System.out.println(Double.MIN_VALUE);
		System.out.println(Double.POSITIVE_INFINITY);
		System.out.println(Double.NEGATIVE_INFINITY);
	}
}
////////////////////////////////////////////////////////////////////////////////
// Stringbufferクラス
class StringBufferDemo {
	public static void main(String args[]) {
		StringBuffer sb1 = new StringBuffer();
		StringBuffer sb2 = new StringBuffer(30);
		StringBuffer sb3 = new StringBuffer("abcde");
		System.out.println("sb1.capacity = " +	sb1.capacity());
		System.out.println("sb1.length = " + sb1.length());
		System.out.println("sb2.capacity = " +	sb2.capacity());
		System.out.println("sb2.length = " + sb2.length());
		System.out.println("sb3.capacity = " +	sb3.capacity());
		System.out.println("sb3.length = " + sb3.length());
	}
}
////////////////////////////////////////////////////////////////////////////////
// オブジェクトの配列
class StringArray {
	public static void main(String args[]) {
		String array[] = new String[5];
		array[0] = "String 0";
		array[1] = "String 1";
		array[2] = "String 2";
		array[4] = "String 4";
		System.out.println(array.length);
		System.out.println(array[0]);
		System.out.println(array[1]);
		System.out.println(array[2]);
		System.out.println(array[3]);
		System.out.println(array[4]);
	}
}
////////////////////////////////////////////////////////////////////////////////
class StringAverage {
	public static void main(String args[]) {
		String array[] = new String[5];
		array[0] = "Short string";
		array[1] = "A much longer string";
		array[2] = "This is a complete sentence!";
		array[3] = "Token";
		array[4] = "This is the longest element in the " +	"array";
		int total = array[0].length();
		total += array[1].length();
		total += array[2].length();
		total += array[3].length();
		total += array[4].length();
		System.out.println("The average string size is " +	total/5);
	}
}
////////////////////////////////////////////////////////////////////////////////
// コマンドライン引数
class CommandLineArguments { 	// javacが終了したらjavaコマンドで
				// java CommandLineArguments joker hoe suzukiとタイプ
	public static void main(String args[]) {
		System.out.println("args.length = " + args.length);
		System.out.println("args[0] = " + args[0]);
		System.out.println("args[1] = " + args[1]);
		System.out.println("args[2] = " + args[2]);
	}
}
////////////////////////////////////////////////////////////////////////////////
class Add2Integers { // java Add2Integers 5 10
	public static void main(String args[]) {
		// 最初の整数を取得する
		int i = Integer.parseInt(args[0]);
		// 次の整数を取得する
		int j = Integer.parseInt(args[1]);
		// 合計を表示する
		int sum = i + j;
		System.out.println("Sum is " + sum);
	}
}
////////////////////////////////////////////////////////////////////////////////
// Systemクラス
class ArrayCopy {
	public static void main(String args[]) {
		int array1[] = { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9 };
		int array2[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 };
		System.arraycopy(array1, 0, array2, 0, 5);
		System.out.print("array2: ");
		System.out.print(array2[0] + " ");
		System.out.print(array2[1] + " ");
		System.out.print(array2[2] + " ");
		System.out.print(array2[3] + " ");
		System.out.print(array2[4] + " ");
		System.out.print(array2[5] + " ");
		System.out.print(array2[6] + " ");
		System.out.print(array2[7] + " ");
		System.out.print(array2[8] + " ");
		System.out.println(array2[9]);
	}
}
////////////////////////////////////////////////////////////////////////////////
// ifステートメント
class SquareRoot { // java SquareRoot 24.0
	public static void main(String args[]) {
		double d = Double.valueOf(args[0]).doubleValue();
		if(d < 0)
			System.out.println(Math.sqrt(-d) + "i");
		if(d >= 0)
			System.out.println(Math.sqrt(d));
	}
}
////////////////////////////////////////////////////////////////////////////////
// if-elseステートメント
class SquareRoot2 { // java SquareRoot2 24.0
	public static void main(String args[]) {
		double d = Double.valueOf(args[0]).doubleValue();
		if(d < 0)
			System.out.println(Math.sqrt(-d) + "i");
		else
			System.out.println(Math.sqrt(d));
	}
}
////////////////////////////////////////////////////////////////////////////////
// コードのブロック
class Angle { /// java Angle 24.0
	public static void main(String args[]) {
		if(args.length > 0) {
			double angle =
				Double.valueOf(args[0]).doubleValue();
			double radians = angle * Math.PI/180;
			System.out.println("cosine: " + Math.cos(radians));
			System.out.println("sine: " + Math.sin(radians));
			System.out.println("tangent: " +
				Math.tan(radians));
		}
		else {
			System.out.println("Provide an angle in degrees " +
				"as command line argument");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// forステートメント
class ForDemo {
	public static void main(String args[]) {
		for(int num = 1; num < 11; num = num + 1)
			System.out.print(num + " ");
		System.out.println("terminating");
	}
}
////////////////////////////////////////////////////////////////////////////////
class ForDemo2 {
	public static void main(String args[]) {
		for(int num = 11; num < 11; num = num + 1)
			System.out.print(num + " ");
		System.out.println("terminating");
	}
}
////////////////////////////////////////////////////////////////////////////////
class ProductAndSum {
	public static void main(String args[]) {
		int sum = 0;
		int prod = 1;
		for(int num = 1; num < 6; num = num + 1) {
			sum = sum + num;
			prod = prod * num;
		}
		System.out.println("product and sum: " + prod + " " + sum);
	}
}
////////////////////////////////////////////////////////////////////////////////
class CountTo100By5 {
	public static void main(String args[]) {
		for(int i = 0; i < 101; i = i + 5)
			System.out.print(i + " ");
		System.out.println("");
	}
}
////////////////////////////////////////////////////////////////////////////////
// forステートメントとコマンドライン関数
class CountLettersDigits { // java CountLetterDigits JOKERHOE
	public static void main(String args[]) {
		int digits = 0;
		int letters = 0;
		for(int i = 0; i < args[0].length(); i = i + 1) {
			char ch = args[0].charAt(i);
			if(Character.isDigit(ch))
				digits += 1;
			else if(Character.isLetter(ch))
				letters += 1;
		}
		System.out.println("There are " + digits + " digits");
		System.out.println("There are " + letters + " letters");
	}
}
////////////////////////////////////////////////////////////////////////////////
class PrimeTest { // java PrimeTest 5
	public static void main(String args[]) {
		// コマンドライン引数を変換する
		int num = Integer.parseInt(args[0]);
		// 要素を判定する
		boolean prime = true;
		for(int i = 2; i <= num/2; i = i + 1)
					if((num % i) == 0) prime = false;
		// 結果を表示する
		if(prime == true)
			System.out.println("The number is prime.");
		else
			System.out.println("The number is not prime.");
	}
}
////////////////////////////////////////////////////////////////////////////////
// インクリメント演算子
class IncrementTest {
	public static void main(String args[]) {
		int i, j;
		i = 10;
		j = i++;
		//11と10が出力されることになる
		System.out.println("i and j: " +	i + " " + j);
	}
}
////////////////////////////////////////////////////////////////////////////////
class IncrementTest2 {
	public static void main(String args[]) {
		int i, j;
		i = 10;
		j = ++i;
		// 11と11が出力されることになる
		System.out.println("i and j: " +	i + " " + j);
	}
}
////////////////////////////////////////////////////////////////////////////////
class CountLettersDigits2 { // java CountLettersDigits2 JOKERHOE
	public static void main(String args[]) {
		int digits = 0;
		int letters = 0;
		for(int i = 0; i < args[0].length(); i++) {
			char ch = args[0].charAt(i);
			if(Character.isDigit(ch))
				++digits;
			else if(Character.isLetter(ch))
				++letters;
		}
		System.out.println("There are " + digits + " digits");
		System.out.println("There are " + letters + " letters");
	}
}
////////////////////////////////////////////////////////////////////////////////
// インクリメント演算子とデクリメント演算子
class IncrementDecrement {
	public static void main(String args[]) {
		int i;
		i = 0;
		System.out.println(++i);	// 1を表示
		System.out.println(i++);	// 1を表示
		System.out.println(i);		// 2を表示
		System.out.println(--i);	// 1を表示
		System.out.println(i--);	// 1を表示
		System.out.println(i);		// 0を表示
	}
}
////////////////////////////////////////////////////////////////////////////////
// バックスラッシュコード
class NewlineDemo {
	public static void main(String args[]) {
		System.out.print("This is line one\n");
		System.out.print("This is line two\n");
		System.out.print("This is line three");
	}
}
////////////////////////////////////////////////////////////////////////////////
class SpecialCharacters {
	public static void main(String args[]) {
		System.out.print("\u00a0 \u00a1 \u00a2 \u00a3");
	}
}
////////////////////////////////////////////////////////////////////////////////
class EmbeddedNewlines {
	public static void main(String args[]) {
		System.out.println("one\ntwo\nthree\nfour");
	}
}
////////////////////////////////////////////////////////////////////////////////
// 関係演算子と論理演算子
class RelationalOperatorDemo {
	public static void main(String args[]) {
		int i = Integer.parseInt(args[0]);
		int j = Integer.parseInt(args[1]);
		System.out.println("i = " + i);
		System.out.println("j = " + j);
		System.out.println("Relational operators:");
		System.out.println("i < j " + (i < j));
		System.out.println("i <= j " + (i <= j));
		System.out.println("i == j " + (i == j));
		System.out.println("i > j " + (i > j));
		System.out.println("i >= j " + (i >= j));
		System.out.println("i != j " + (i != j));
	}
}
////////////////////////////////////////////////////////////////////////////////
class LogicalOperatorDemo {
	public static void main(String args[]) {
		boolean i = Boolean.valueOf(args[0]).booleanValue();
		boolean j = Boolean.valueOf(args[1]).booleanValue();
		System.out.println("i = " + i);
		System.out.println("j = " + j);
		System.out.println("Logical operators:");
		System.out.println("i & j " + (i & j));
		System.out.println("i | j " + (i | j));
		System.out.println("i ^ j " + (i ^ j));
		System.out.println("!i " + !i);
		System.out.println("i && j " + (i && j));
		System.out.println("i || j " + (i || j));
		System.out.println("i == j " + (i == j));
		System.out.println("i != j " + (i != j));
	}
}
////////////////////////////////////////////////////////////////////////////////
// 三項演算子
class TernaryOperatorDemo {
	public static void main(String args[]) {
		int i = 10;
		int j = 5;
		System.out.println((i > j) ? i : j);
	}
}
////////////////////////////////////////////////////////////////////////////////
// ifステートメントのネスト
class IfElseLadder {
	public static void main(String args[]) {
		int i = Integer.valueOf(args[0]).intValue();
		if (i < 0)
			System.out.print("Negative number");
		else if (i == 0)
			System.out.print("Zero");
		else if (i == 1)
			System.out.print("One");
		else if (i == 2)
			System.out.print("Two");
		else if (i == 3)
			System.out.print("Three");
		else
			System.out.print("Greater than three");
	}
}
////////////////////////////////////////////////////////////////////////////////
class IfElse {
	public static void main(String args[]) {
		int i = Integer.parseInt(args[0]);
		if (i > 0)
			if (i > 3)
				System.out.println("i > 0 and i > 3");
			else
				System.out.println("i > 0 and i <= 3");
		else
			System.out.println("i <= 0");
		}
}
////////////////////////////////////////////////////////////////////////////////
// forループのバリエーション
class ExpressionLoop {
	public static void main(String args[]) {
		int i = Integer.parseInt(args[0]);
		for( ; i > 0; i--) System.out.print(i + " ");
		System.out.println("");
	}
}
////////////////////////////////////////////////////////////////////////////////
class EmptyForIncrement {
	public static void main(String args[]) {
		int i;
		for(i = 0; i < 10; ) {
			System.out.println(i);
			i++;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// whileループ
class WhileDemo { // java whileDemo 5
	public static void main(String args[]) {
		int i = Integer.parseInt(args[0]);
		while (i > 0) {
			System.out.print(i + " ");
			i--;
		 }
		 System.out.println("");
	}
}
////////////////////////////////////////////////////////////////////////////////
// コマンドライン引数で指定された文字列内の母音の数をカウントする
class VowelCounter { // java VowelCounter JOKERHOE
	public static void main(String args[]) {
		int vowels = 0;
		int i = args[0].length() - 1;
		while (i >= 0) {
			char c = args[0].charAt(i);
			if(c == 'A' || c == 'a')
				++vowels;
			else if(c == 'e' || c == 'E')
				++vowels;
			else if(c == 'i' || c == 'I')
				++vowels;
			else if(c == 'o' || c == 'O')
				++vowels;
			else if(c == 'u' || c == 'U')
				++vowels;
			--i;
		}
		System.out.println("The number of vowels is " +
			vowels);
	}
}
////////////////////////////////////////////////////////////////////////////////
// doループ
class PrimeNumbers {
	public static void main(String args[]) {
		int count = 0;
		int number = 2;
		do {
			// 要素があるかどうかテストする
			boolean prime = true;
			for(int i = 2; i < number/2 + 1; i++) {
				if((number % i) == 0) prime = false;
			}
			// 素数がある場合は,表示する
			if(prime == true) {
				System.out.print(number + " ");
				++count;
			}
			// 数値を増分する
			++number;
		} while(count < 15);
System.out.println("");
	}
}
////////////////////////////////////////////////////////////////////////////////
// ループのネスト
class Alphabet3 {
	public static void main(String args[]) {
		int i, j, k;
		for (i = 0; i < 3; i++)
			for (j = 0; j < 26; j++)
				for (k = 0; k < 2; k++)
					System.out.print((char)('A' + j));
	}
}

////////////////////////////////////////////////////////////////////////////////
// breakステートメント
class BreakDemo {
	public static void main(String args[]) {
		int i;
		for (i = 1; i < 100; i++) {
			System.out.println(i);
			if (i == 10) break;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// コマンドライン引数の中で'$'から始まる文字列を検索します。
class DollarArgument { // java DollarArgument JOKER HOE $u2uk1
	public static void main(String args[]) {
		for (int i = 0; i < args.length; i++) {
			if (args[i].startsWith("$")) {
				System.out.println(args[i]);
				break;
			}
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
class BreakNestedLoop {
	public static void main(String args[]) {
		for (int i = 0; i < 10; i++) {
			for (int j = 0; j < 10; j++) {
				System.out.println(j);
				if (j == 4) break;
			}
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// Continueステートメント
class ContinueDemo {
	public static void main(String args[]) {
		for (int x = 0; x < 100; x++) {
			if (x < 95) continue;
			System.out.println(x);
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
class TenRandomNumbers {
	public static void main(String args[]) {
		int i = 0;
		while (true) {
			double d = Math.random();
			if (d < .2 || d > .8)
				continue;
			System.out.println(d);
			if (++i == 10)
				break;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////P114
// switchステートメント
class SwitchDemo {
	public static void main(String args[]) {
		int i = Integer.parseInt(args[0]);
		switch (i) {
			case 1:
				System.out.println("one");
				break;
			case 2:
				System.out.println("two");
				break;
			case 3:
				System.out.println("three");
				break;
			case 4:
				System.out.println("four");
				break;
			default:
				System.out.println("Unrecognized Number");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
class MissingBreaks {
	public static void main(String args[]) {
		int i = 3;
		switch (i) {
		case 5:
			System.out.println("Greater than 4");
		case 4:
			System.out.println("Greater than 3");
		case 3:
			System.out.println("Greater than 2");
		case 2:
			System.out.println("Greater than 1");
		case 1:
			System.out.println("Greater than 0");
			break;
		default:
			System.out.println("Greater than 5" +
				" or negative");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
class EmptyCase {
	public static void main(String args[]) {
		// 引数の先頭の文字を取得する
		char ch = args[0].charAt(0);
		// 先頭の文字が母音か子音かを判断する
		switch (ch) {
			case 'a':
			case 'e':
			case 'i':
			case 'o':
			case 'u':
			case 'y':
				System.out.println("Vowel");
				break;
			default:
				System.out.println("Consonant");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// コンパイルエラーになります。
class BadSwitch {
	public static void main(String args[]) {
		int i = 1;
		int j = 2;
		switch (Integer.parseInt(args[0])) {
			case i:
				System.out.println("1");
				break;
			case j:
				System.out.println("2");
				break;
			default:
				System.out.println("Default");
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
// ビット演算子
class BitwiseOperators {
	public static void main(String args[]) {
		char c = 'A';
		byte b = 100;
		short s = 100;
		int i = -100;
		long lo = 100;
		System.out.println(c & 0xf);
		System.out.println(b | 1);
		System.out.println(s ^ 1);
		System.out.println(~i);
		System.out.println(lo | 1);
		System.out.println(i >> 2);
		System.out.println(s >>> 2);
		System.out.println(i << 2);
	}
}
////////////////////////////////////////////////////////////////////////////////
class ShowBits {
	public static void main(String args[]) {
		byte b = -5;
		for (int i = 7; i >= 0; i--) {
			if ((b & 0x80) == 0)
				System.out.println("Bit " + i + " is 0");
			else
				System.out.println("Bit " + i + " is 1");
			b <<= 1;
		}
	}
}
////////////////////////////////////////////////////////////////////////////////
class BitwiseOperators2 {
	public static void main(String args[]) {
		short s = 0xff;
		System.out.println(s);
		System.out.println(s & 0xf);
		System.out.println(s | 1);
		System.out.println(s ^ 1);
		System.out.println(~s);
		System.out.println(s >> 2);
		System.out.println(s >>> 2);
		System.out.println(s << 2);
	}
}

///////////////////////////////////////////////////////////////////////////////////////////
To be continue..... to Vol.2

==============================================================================



I-ichirow Suzuki _/_/_/_/_/_/_/_/_/_/_
URL : www.kg-group.com Top Page
Mail : suzuki@kg-group.com
/_/_/_/_/_/_/_/_/_/_/_/_ ICQ : 3743158