Java のプリミティブ型

Java は、オブジェクト指向言語, なく、かなり, オブジェクトとは限らないので. あるいわゆるプリミティブ型!

プリミティブ型

コメント

  • 文字列プリミティブ型ではないです。;
  • 各プリミティブ データ型に対応する Java クラスがあります。;
  • 整数 (バイト, 短い, int, 長い) なる, 既定では, int, 長いを指す場合に、"l"または"L"を使用して;
  • 進, 使用して、 “0x” 16 進数で (int 15 = 0 xf; // 15 10 進数) および “0” 8 進数 (int x = 0931);
  • 浮動小数点 (フロート, ダブル) なる, 既定では, ダブル, 浮遊物を示すために"f"または"F"を使用します。;
  • 文字は、Unicode 文字で表される 16 ビット (気配がないです。);
  • ブール値はキャストの操作では使えない;
  • キャストは大きいから小さい型への変換 (明示的です), Ex: 長い y = 10 l; int x = (int) y;
  • ときにキャストが必要ないを入力する最大最小, それが許容されるため (黙示), Ex: int y = 10; ロング x = y;

これらの概念は、次のとおり請求できます。:

質問 1

COPEVE UFAL – 2011 – UFAL – それアナリスト

プリミティブ Java データ型します。:
、) ブール値, char, バイト, 短い, int, 長い, フロート, ダブル.
(b)) ブール値, 文字列, int, フロート, ダブル.
(c)) ブール値, 文字列, 短い, int, 長い, フロート, ダブル.
(d)) ブール値, char, int, 長い, フロート.
および) ブール値, 文字列, バイト, int, 長い, フロート.

返信 1

それは明らかに彼らが言うすべての選択肢 “文字列” プリミティブ型が間違っている、します。. 文字 d) 完全ではありません。, だから, 我々 は手紙を残しています。) 修正します。.


質問 2

CESGRANRIO – 2008 – TJ RO – 法律アナリスト – システム分析


Java で, 複合代入 x += y は x = に相当 (T) (x + y), ここで T は x の型. この前提に基づき, 2 次のプログラム行を考慮します。.

x += y;
x = x + y;

最初の行はコンパイルされます。, 2 行目は、コンパイル時にエラーになりますと, もし x と y を宣言, それぞれ, として:
、) 短いと int
(b)) int と短い
(c)) int および char
(d)) 文字列関数および int 関数
および) int および String

返信 2

この質問は面白い, それは、この記事の声明で述べている様々 な概念をカバーするため. 基本的には、鋳造を行う必要がありますだけを覚えています。 (明示的な変換) 下部より大きい型の. 別の詳細はあなた自身の質問のヒント, X += y が x = に相当を言うとき (T) (x + y). このような状況に注意してください。, コンパイラはキャスト (T), だけでなく宣言する x = x + y. そして最後に, 最初の行がコンパイルされますオプションを知りたがっている質問メモ, 2 行目でエラーが発生し、. それでこのように見ます:

、) X は y と短い int 型に対し, エラーは生成へのキャストを必要とするつもり, 短い (16 ビット) int 型よりも小さい (32 ビット), IE, 明示的な変換をした場合を除き、短い int を受け取ることができません。 (鋳造). だから, x += のような y、x = に相当 (T) (x + y), 我々 が持っている x = (短い) (x + y). キャストが適切に行われていた、変換に問題表示されませんを参照してください。. 2 行目の (x = x + y), 最大鋳造が不要です (int) 最小の (短い), その結果、コンパイル エラー. これは正しい選択肢です。, 明確な最初の行がコンパイルされるわけだから, 2 行目でエラーが発生し、.

(b)) ここで最初の行の両方があります。, 2 番目の問題もなくコンパイルされます。, 変換は暗黙的なので (最大、最小の独立した鋳造), Int だから (x) 短いが届きます (y) ステートメントで x = x + y. これにオプションをすることができませんでした。, 両方の行がコンパイルされますので.

(c)) 両方のラインが正しくコンパイルされます。, 同じ理由で b に記載されています。). また、char を含む 16 ビット, 短いだけでなく、. 唯一の違いは、合計 int を実行するとき + ステートメントを char x = x + y, 文字の ASCII コードとみなされます (char) 使用. 例えば, 97 文字に対応」’ ASCII テーブル.

(d)) 両方のラインが正しくコンパイルされます。. ここの理由は記号と見なします、 + リンクとして (ジャンクション) 合計ではないです。, int に変換します。 (y) 文字列の (x), ステートメントを実行すると x = x + y.

および) 両方の行はコンパイルされません。, 文字列に変換する方法がないので (y) int の (x) ステートメントを実行すると x = x + y.

総ヒット数: 7207

2 上のコメント “Java のプリミティブ型

メッセージを残してください

あなたのメール アドレスは公開されません. 必要なフィールドが付いています *