JAVAの基本 - 変数まわり
変数の型
型 | 説明 |
---|
boolean | 真偽値。true または false。 |
---|
char | 2バイトUNICODE文字。'u0000'~'uffff'。 |
---|
byte | 1バイト符号付整数。-128~127。 |
---|
short | 2バイト符号付整数。-32768~32767。 |
---|
int | 4バイト符号付整数。-2147483648~2147483647。 |
---|
long | 8バイト符号付整数。約-922京~約922京。 |
---|
float | 4バイト浮動小数点数。 |
---|
double | 8バイト浮動小数点数。 |
boolean - 真偽値
boolean は真偽を表す値。 true または false の2値を持ちます。
boolean v1 = true;
boolean v2 = false;
char - 文字コード
char は文字1文字分の変数を代入する事ができます。Javaのchar型は2バイトのため、日本語の全角文字1文字もcharには UNICODE(UTF-16)文字を代入します。日本語文字(全角文字)の1文字も char で表すことができます。'\u0041' は、文字コード 0041(16進数)の文字を意味します。
char v1 = 'A';
char v2 = 'あ';
char v3 = '\u0041';
C/C++言語で用いられる、 char は 1バイトですが、Java の char は 2バイトです。また文字列を扱う場合はStringをご覧ください。
byte, short, int, long - 整数値
byte, short, int, long は整数値を表す long 型変数に数値を代入する際には、数値の最後に L をつける必要があります。例えば、128 という数値を表現する場合は byte ではなく short や int などを使用します。
byte a = 127;
short b = 32767;
int c1 = 2147483647;
long d = 9223372036854775807L;
0x で始まる数値は 16進数、0 で始まる数値は 8進数と解釈されます。
int c2 = 0775; // 8進数
int c3 = 0x79ab45; // 16進数
C/C++ 言語で用いられる、unsigned int などの unsigned(符号なし)はJavaにはありません。。
float, double - 実数値
float と double は浮動小数点数の型です。簡単にいえば小数点が扱える型です。
float に数値を代入する際には、数値の最後に F をつけます。
float f1 = 1.23F;
float f2 = 1.23e4F;
1.23e4 は、1.23×10^4 = 12300 を意味します。
double d1 = 1.23;
double d2 = 1.23e4;
浮動小数点数では、以下の特別な値が用意されています。
float f1 = Float.NaN; // 非数(Not a Number)
float f2 = Float.POSITIVE_INFINITY; // 正の無限大
float f3 = Float.NEGATIVE_INFINITY; // 負の無限大
double d1 = Double.NaN; // 非数(Not a Number)
double d2 = Double.POSITIVE_INFINITY; // 正の無限大
double d3 = Double.NEGATIVE_INFINITY; // 負の無限大
型変換(キャスト)
型やクラスを一時的に変換して参照することを キャスト と言います。int値(4バイト)から long値(8バイト)に代入できますが、int値(4バイト)から short値(2バイト)へは オーバーフローが発生する可能性があるためコンパイルしようとするとエラーとなります。
int v = 123 ;
long l1 = v ;
short s1 = v ; // コンパイルエラー
int値(4バイト)から short値(2バイト)といった、小さい型に変換する場合は 明示的に型変換を行います。
int v = 123 ;
short s1 = (short)v;
文字列から整数へ変換
String val1 = "123";
int val2 = Integer.parseInt(val1);
文字列から数値(Double)へ変換
String val1 = "123.45" ;
Double val2 = Double.parseDouble(val1);
整数から文字列へ変換
int val1 = 123;
String val2 = String.valueOf(val1);
数値(Double)から文字列へ変換
Double val1 = 123.45;
String val2 = String.valueOf(val1);
コメントアウト
1行のみコメントアウトする場合は // を使用します。
複数行にまたがるコメントは /* ~ */ を使用します。
/*
複数行にまたがるコメント
複数行にまたがるコメント
*/
javadoc コマンドでコメント部分をドキュメント化したい場合は/** ~ */ を用います。
/**
* javadoc コマンドでドキュメント化
*/