Javaの – データタイプ

2017年11月

私たちのビデオ


プリミティブ型

Javaは、彼は、クラス、またはより正確には、これらのクラスのインスタンスであるオブジェクトを、操作すると言うことですオブジェクト指向言語です。ジャワで処理し、これを変数によって使用されているので、データが入力され、オブジェクトのタイプは、インスタンスのクラスです。

しかし、現在のデータを直接操作できるように、いくつかのプリミティブ型は、あります。このデータは、特にバイトの事前に定義された数に、従ってメモリ表現で指定されました。

ここでのJavaの8つのプリミティブ型を持つテーブルには、次のとおりです。


タイプ意味サイズ(バイト)受け入れられた値の範囲
チャリオットUnicode文字2\ U0000? \ Uffff(0〜65535)
バイト短整数1-128? +127
ショートパンツ短整数2-32,768? +32 767
int型いっぱい4-231?-2.147×109? + 231-1?2147×109
長いです長整数8-263 -9.223×1018? + 263-1?9223×1018
フロート本当のシンプル番号42-149±?1.4×10-45? 2128-2104±?3.4×1038
ダブルダブル実数82から1074±?4.9×10から324? 21024-2971±?1.8×10308
ブーリアンロジック(論理値)1真(true)か偽()

ラッパー(ラッパー)

各プリミティブ型をすることができ "ラップ" この目的のためにクラスからオブジェクト内と呼ばれます ラッパー (英語の単語の意味 ラッパー)。ラッパーは、したがって、プリミティブ型を表すオブジェクトです。

利点:

  • ラッパーは、任意のオブジェクトとして使用することができますので、彼らは独自のメソッドを持っています。

短所:
  • 囲んでいるオブジェクトは、プリミティブ型よりも多くのメモリ空間を使用しています。例えば、INTは、メモリ内に4つのバイトを取るが、整数は64ビット(32ビットに20バイト)で、仮想マシン上の32バイトを使用します。
  • ラッパーオブジェクトは、それを変更することはできませんつまり、その値の変化は、新しいオブジェクトを作成し、計算時間を増加させる、古いものを破壊するために必要な、不変です。


ここでは、各Javaプリミティブ型のラッパーは、以下のとおりです。

ラッパープリミティブ型
文字チャリオット
バイトバイト
ショートパンツショートパンツ
整数int型
長いです長いです
フロートフロート
ダブルダブル
ブーリアンブーリアン

整数(バイト、短い、int型、長いです

整数は、異なる塩基で表現することができる非ポイント数です。

  • ベース10進数は数字0で開始しない(0〜9)一桁の一連によって表されます
  • 進整数が始まる前に、ユニットのシーケンス(0〜9またはAからF(またはfを介して))で表されます。 0X 若しくは 0X
  • 進整数(0〜7の数字のみを含む)単位の配列によって表される開始します 0


数はint型で表現するには大きすぎる場合は、明示的にバックLを追加することで、長いとしてそれを宣言する必要があります。

長いN = 9876543210L。

整数はデフォルトで署名され、それは彼らが看板を持っていることを意味します。 (バイナリで)記号についての情報を保存するには、コンピュータは、2の補数を使用します

ポイント番号(フロート、ダブル

浮動小数点数は、浮動小数点数、しかし、それは次のように表すことができるされています。

  • 10進整数:895
  • (ポイントと米国の格付けを使用して)浮動小数点数:845.32
  • 指数の数値、それは文字が続く番号(おそらくコンマを)言うことです E (または E) - )、そして10のパワーに対応する整数(署名されたかどうか、すなわち、+またはが前、と言うことです

2.75e-2
35.8E + 10
.25E-2

実際には、実数浮動小数点数れること、すなわち、小数点の位置が固定されていない番号を言うことであり、(指数と呼ばれる)は、そのビットの部分によって識別されます残りのビットは、点(仮数)なしの数を符号化するために使用されます。

タイプ番号 フロート 含む32ビットに符号化されます。

  • 仮数部のための23ビット
  • 指数8ビット
  • 符号用1ビット

タイプ番号 ダブル 含む64ビットに符号化されます。

  • 仮数のための52ビット
  • 指数のための11ビット
  • 符号用1ビット

実数の精度が近づきました。それは、小数点以下の桁数に依存し、それは、少なくとも次のようになります。

  • タイプの6桁 フロート
  • タイプの15桁の ダブル


直接コード内のfloat値を書き込むとき、それは二重のように、デフォルトで考えられています。 1は、それがフロートを表し、その精度を削減したい場合は、明示的に彼にFを追加する必要があります。

フロートX = 2F。

文字(チャリオット

タイプ チャリオット (英語から 文字)文字の16ビットでコード化されたUnicode値を、格納し、それは16ビット、または65535文字の上にコード化された整数を言うことです!
従って、変数にアクセント文字を格納することが可能です チャリオット.

あなたは文字Bを保存するために、たとえばたい今までならば、このデータは1は、このようにコピーして、Unicode文字を貼り付けると置くことができ、そのコードはUnicode「\ u0066」で、または直接単一引用符「B」の文字を配置することにより、いずれかに定義することができます直接あなたのコード内のUnicode値を知っておく必要はありません。

文字列(

文字列は、文字列が属性およびメソッドを有するオブジェクトであることを意味し、データの種類ではなく、クラスに対応していません。次のように文字列を宣言することができます。
文字列s = "文字列";

データ型変換(キャスト)

彼らは、呼び出し データ型変換, 時々 キャスト (英語翻訳 キャスト)、指定した別の種類を変更するには失敗。

  • 暗黙的な変換:暗黙的な変換は、コンパイラによって自動的に行われるデータの種類の変化です。これは、あなたが別の型で宣言された変数にデータ型を格納する際に、コンパイラはエラーを返しませんが、変換を実行することを意味します インプライド データの変数に代入する前に。例えば、そのラッパーにプリミティブの変換が示唆されます。

INT、N = 8。
整数m = N;
  • 明示的な変換:明示的な変換は(とも呼ばれます キャスト操作)強​​制データの種類の変更で構成されます。これは、1つを使用すると言ったことを意味オペレータ キャスト 変換を指定します。キャストオペレータは、単に一つの変数の前に括弧の間に、変数を変換することを希望するデータの種類です。

二重X = 8.324;
INT、N =(INT)X。
xが割り当て後の値8を含みます。

参照してください。


この記事(PDF)をダウンロード
この記事をダウンロードする(PDF