JAva入門チュートリアル-2.1 Javaデータ型および変数の定義
22676 ワード
Javaは
強いタイプ
の言語で、変数を宣言するときにデータ型を指定する必要があります.変数(variable)の値は一定のメモリ領域を占めます.異なるタイプの変数が異なるサイズを占めます.
Javaには、4種類の整数型、2種類の浮動小数点型、1種類の文字型、1種類のブール型を含む8種類の基本データ型があります.下表を参照してください.
Java基本データ型
データ型
説明
使用メモリ
例を挙げる
コメント
byte
バイト型
1 byte
3, 127
short
たんせいけい
2 bytes
3, 32767
int
せいけい
4 bytes
3, 21474836
long
ちょうせいがた
8 bytes
3L, 92233720368L
longは最後にL文字(大文字と小文字はどうでもいい)が必要です.
float
単精度浮動小数点型
4 bytes
1.2F, 223.56F
floatは最後にF文字(大文字と小文字はどうでもいい)が必要です.
double
デュアル精度浮動小数点型
8 bytes
1.2, 1.2D, 223.56, 223.56D
doubleは最後にD文字があるほうがいいです(大文字と小文字は関係ありません).
char
もじがた
2 bytes
'a', ‘A’
文字型データは1文字のみで、単一引用符で囲まれています.
boolean
ブールがた
1 bit
true, false
整数データの場合、通常intタイプが使用されます.しかし、広島長崎に投下された原爆から放出されるエネルギーを表すにはlongタイプが必要だ.byteとshortタイプは、主に特定のアプリケーションの場合に使用されます.たとえば、最下位のファイル処理や、ストレージ容量を占有する大きな配列を制御する必要があります.
Javaでは、整数データの長さはプラットフォームとは無関係であり、ソフトウェアが1つのプラットフォームから別のプラットフォームに移植されたときにプログラマーに与える多くの問題を解決します.これに対して、C/C++整数データの長さはプラットフォームに関連しており、プログラマは異なるプラットフォームに対して適切な整数を選択する必要があり、64ビットシステム上で安定して動作するプログラムが32ビットシステム上で整数オーバーフローする可能性がある.
8進数には0の接頭辞があり、例えば010は10進数の8に対応する.16進数には0 xの接頭辞があり、例えば0 xCAFEがある.Java 7から、プレフィックス0 bを使用してバイナリデータを表すことができ、例えば0 b 1001は10進数の9に対応する.同様にJava 7から、下線を使って数字を区切ることができます.英語の数字のように書くことができます.例えば、1_000_000は100000、つまり100万を表します.下線は、コードをより読みやすくするために、コンパイラがこれらの下線を削除します.
また,C/C++とは異なり,Javaでは符号なしタイプ(unsigned)はサポートされていない.
floatタイプの有効数字は最長7ビットで、有効数字の長さは整数部と小数部を含む.例:
注意:各floatタイプの後ろには、floatタイプを表すフラグ「F」または「f」があります.
doubleタイプの有効数字は最大15ビットです.floatタイプと同様にdoubleの後ろにもフラグ「D」または「d」が付いています.例:
注:フラグのない浮動小数点型データは、システムのデフォルトではdoubleタイプです.
多くの場合doubleタイプを使用しており、floatの精度はニーズを満たすことが難しい.
異なるデータ型の適用例:
実行結果:
ウェブサイトの名前は:微学苑
10進数に変換:x=22,y=18,z=34
計算積:22.45*10.0=224.5000000762939453
実行結果から,浮動小数点型データが整数のみで小数点がない場合でも,コンソール出力時にシステムに小数点が自動的に加算され,小数点がすべて0に設定されることが分かった.
ブール型の説明
プログラミングの経験があり、ブール型を理解している場合は、次のチュートリアルをスキップしてください.次のチュートリアルは、C言語の基礎しかない読者(C言語にブール型はありません).
C言語では、判断条件が成立すると1が返され、そうでない場合は0が返されます.たとえば、次のようになります.
実行結果:
100>10 = 1
100<10 = 0
しかしJavaでは異なり、条件が成立してtrueを返し、そうでなければfalse、すなわちブールタイプを返します.例:
実行結果:
100>10 = true
100<10 = false
100<10が正しい
実際、trueは1に等しく、falseは0に等しく、名前を変えただけで、単独でデータ型になる.
強いタイプ
の言語で、変数を宣言するときにデータ型を指定する必要があります.変数(variable)の値は一定のメモリ領域を占めます.異なるタイプの変数が異なるサイズを占めます.
Javaには、4種類の整数型、2種類の浮動小数点型、1種類の文字型、1種類のブール型を含む8種類の基本データ型があります.下表を参照してください.
Java基本データ型
データ型
説明
使用メモリ
例を挙げる
コメント
byte
バイト型
1 byte
3, 127
short
たんせいけい
2 bytes
3, 32767
int
せいけい
4 bytes
3, 21474836
long
ちょうせいがた
8 bytes
3L, 92233720368L
longは最後にL文字(大文字と小文字はどうでもいい)が必要です.
float
単精度浮動小数点型
4 bytes
1.2F, 223.56F
floatは最後にF文字(大文字と小文字はどうでもいい)が必要です.
double
デュアル精度浮動小数点型
8 bytes
1.2, 1.2D, 223.56, 223.56D
doubleは最後にD文字があるほうがいいです(大文字と小文字は関係ありません).
char
もじがた
2 bytes
'a', ‘A’
文字型データは1文字のみで、単一引用符で囲まれています.
boolean
ブールがた
1 bit
true, false
整数データの場合、通常intタイプが使用されます.しかし、広島長崎に投下された原爆から放出されるエネルギーを表すにはlongタイプが必要だ.byteとshortタイプは、主に特定のアプリケーションの場合に使用されます.たとえば、最下位のファイル処理や、ストレージ容量を占有する大きな配列を制御する必要があります.
Javaでは、整数データの長さはプラットフォームとは無関係であり、ソフトウェアが1つのプラットフォームから別のプラットフォームに移植されたときにプログラマーに与える多くの問題を解決します.これに対して、C/C++整数データの長さはプラットフォームに関連しており、プログラマは異なるプラットフォームに対して適切な整数を選択する必要があり、64ビットシステム上で安定して動作するプログラムが32ビットシステム上で整数オーバーフローする可能性がある.
8進数には0の接頭辞があり、例えば010は10進数の8に対応する.16進数には0 xの接頭辞があり、例えば0 xCAFEがある.Java 7から、プレフィックス0 bを使用してバイナリデータを表すことができ、例えば0 b 1001は10進数の9に対応する.同様にJava 7から、下線を使って数字を区切ることができます.英語の数字のように書くことができます.例えば、1_000_000は100000、つまり100万を表します.下線は、コードをより読みやすくするために、コンパイラがこれらの下線を削除します.
また,C/C++とは異なり,Javaでは符号なしタイプ(unsigned)はサポートされていない.
floatタイプの有効数字は最長7ビットで、有効数字の長さは整数部と小数部を含む.例:
- float x = 223.56F;
- float y = 100.00f;
注意:各floatタイプの後ろには、floatタイプを表すフラグ「F」または「f」があります.
doubleタイプの有効数字は最大15ビットです.floatタイプと同様にdoubleの後ろにもフラグ「D」または「d」が付いています.例:
- double x = 23.45D;
- double y = 422.22d;
- double z = 562.234;
注:フラグのない浮動小数点型データは、システムのデフォルトではdoubleタイプです.
多くの場合doubleタイプを使用しており、floatの精度はニーズを満たすことが難しい.
異なるデータ型の適用例:
- public class Demo {
- public static void main(String[] args){
- //
- char webName1 = ' ';
- char webName2 = ' ';
- char webName3 = ' ';
- System.out.println(" :" + webName1 + webName2 + webName3);
-
- //
- short x=22; //
- int y=022; //
- long z=0x22L; //
- System.out.println(" :x = " + x + ", y = " + y + ", z = " + z);
-
- //
- float m = 22.45f;
- double n = 10;
- System.out.println(" :" + m + " * " + n + "=" + m*n);
- }
- }
実行結果:
ウェブサイトの名前は:微学苑
10進数に変換:x=22,y=18,z=34
計算積:22.45*10.0=224.5000000762939453
実行結果から,浮動小数点型データが整数のみで小数点がない場合でも,コンソール出力時にシステムに小数点が自動的に加算され,小数点がすべて0に設定されることが分かった.
ブール型の説明
プログラミングの経験があり、ブール型を理解している場合は、次のチュートリアルをスキップしてください.次のチュートリアルは、C言語の基礎しかない読者(C言語にブール型はありません).
C言語では、判断条件が成立すると1が返され、そうでない場合は0が返されます.たとえば、次のようになります.
- #include <stdio.h>
-
- int main(){
- int x = 100>10;
- int y = 100<10;
- printf("100>10 = %d
", x);
- printf("100<10 = %d
", y);
-
- return 0;
- }
実行結果:
100>10 = 1
100<10 = 0
しかしJavaでは異なり、条件が成立してtrueを返し、そうでなければfalse、すなわちブールタイプを返します.例:
- public class Demo {
- public static void main(String[] args){
- //
- boolean a = 100>10;
- boolean b = 100<10;
- System.out.println("100>10 = " + a);
- System.out.println("100<10 = " + b);
-
- if(a){
- System.out.println("100<10 ");
- }else{
- System.out.println("100<10 ");
- }
- }
- }
実行結果:
100>10 = true
100<10 = false
100<10が正しい
実際、trueは1に等しく、falseは0に等しく、名前を変えただけで、単独でデータ型になる.