javaで標準入力を受ける方法

javaで標準入力を受ける方法をTwitterで@nise_nabeさんに教えてもらった。
http://twitter.com/nise_nabe/status/14289697162
ほかにもいろいろ教えてもらった。ありがとうございました。
http://bettween.com/brainfs/nise_nabe

Scannerのリファレンス。
http://java.sun.com/j2se/1.5.0/ja/docs/ja/api/java/util/Scanner.html

import java.math.BigInteger;
import java.util.Scanner;
public class UseScanner {
	public static void main(String[] args) {
		Scanner scanner = new Scanner(System.in);

		// int型変数の読み込み。
		// => nextInt
		int n = scanner.nextInt();
		System.out.println("input integer: " + n);

		// long型変数の読み込み。
		// => nextLong
		long ln = scanner.nextLong();
		System.out.println("input long integer: " + ln);

		// Stringの読み込み。
		// => next
		String s = scanner.next();
		System.out.println("input string:" + s);
		System.out.println();

		// ・・・と、他にもnextByte, nextShortなどがある。
		// 次は多倍長整数の入力。
		BigInteger bn = scanner.nextBigInteger();
		System.out.println(bn);

		// 16新整数を読む
		scanner.useRadix(16);
		n = scanner.nextInt();
		scanner.useRadix(10);
		System.out.println(n);
	}
}

TODO: 1行丸ごと読み込む方法を調べる