JAVA Primitive Type
データ型
Javaデータ型には、基本タイプと参照タイプがあります.基本タイプは数字型と論理型に分けられ、数字型は整数型と実数型に分けられる.
デフォルトのデータ型の変数は、宣言後にJavaのメモリ領域のスタック領域に格納されます.
整数文字実数論理1バイト--ブール2バイトshortchar--4バイトint-float-8バイトlong-double-
整数型
コンピュータ内部で整数を表す場合は、バイナリ数を処理します.
byte (-128 ~ 127)
主にバイト単位の情報を格納または通信するために使用されます.
short (-32,768 ~ 32,767)
int (-2,147,483,648 ~ 2,147,483,647)
真髄を表すときに最もよく使われる資料型です.コンピュータ上で整数演算を行う場合、4バイト単位で処理するのが最も有効であるため、Javaコンパイラは基本的にすべての数字をint型に変換して処理し、宣言されたデータ型に復元する.
long (-9,233,372,036,854,775,808 ~ 9,233,372,036,854,775,807)
Javaコンパイラは整数をintタイプに処理するため、int範囲外の数字をlongタイプに入れるとエラーが発生します.コンパイラにこの数字を長く処理すると、エラーが発生しないように、数字の後ろにLを付けて解決します.
long num1 = 2147483700; // 오류
long num1 = 2147483700L;
charは主に文字を表現するための資料型であり,
유니코드
に対応して符号化される.Cでは、char型符号化はASCIIコードに対応する.このときchar型の集合,つまりchar型のポインタが文字列として扱われ,Javaもこのように処理できるのでしょうか.
public class Main {
public static void main(String[] args) {
char[] charArr = {'a', 'b', 'c', 'd', 'e'};
for(char x : charArr) {
System.out.print(x);
}
System.out.println();
String str = "abcde";
System.out.print(str);
}
}
可能ですが、JavaはStringという資料型を提供しています.本資料型は参考に供するだけで,後で詳しく論じる実数型
コンピュータ内部でエラーを表す場合は、整数とは異なる浮動小数点方式を使用します.これは、整数を表す方法と同様に、メモリを3つの部分(シンボル、整数、小数)に分割すると、表すことができる数の範囲が小さくなるためです.
浮動小数点方式
実数0.1を浮動小数点で表す方式です.このように数、指数部分を分けて実数値を表すことを浮動小数点方式と呼ぶ.
パソコンは2進数を使っているので、ベースは2で、歌手が正規化する過程は1です.n形式になる.浮動小数点方式は±(1.可数部)×2^(指数フロー-127)形式で表現します.
たとえば、実数値0.4を表すために、コンピュータは内部で0.2を表すために、1.6*2^(-3)のような浮動小数点数式を生成します.
浮動小数点方式と誤差
2を底数とする浮動小数点で表される小数点を10進数に変換すると誤差が生じるため、計算機で表される小数は近似値に過ぎず、正確な値とは考えられない.
public class Main {
public static void main(String[] args) {
double num = 0.1;
for(int i = 0; i < 1000; i++) {
num += 0.1;
}
System.out.print(num);
}
}
// 100.09999999999859
したがって、浮動小数点で表される0.1は、10進数の0.1に等しくない.では、メモリにどのように格納しますか?
double
float
Javaは基本的に小数型データは二重入力であると考えられる.したがってflaot型変数に小数を入力するとエラーが発生し、long型の処理と同様に小数の後にfを付けるだけで解決します.
Default Value
場合によっては、初期化変数がなくても自動初期化される場合があり、このとき自動初期化される値はDefault Valueとなります.
Reference
この問題について(JAVA Primitive Type), 我々は、より多くの情報をここで見つけました https://velog.io/@tjeong/JAVA-변수와-자료형テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol