1. ホーム
  2. c#

[解決済み】JavaとC#のintとIntegerの違いは何ですか?

2022-04-02 20:01:16

質問

を読んでいました。 ソフトウェアに関するその他のJoel に出会ったとき、私は ジョエル・スポルスキー の違いを知っている特定のタイプのプログラマーについて、何か言っている。 intInteger をJava/C# (オブジェクト指向プログラミング言語)で作成しました。

では、何が違うのでしょうか?

解決方法は?

Java の場合。 int' 型はプリミティブであり、'Integer' 型はオブジェクトである。

C#の場合。 と同じで、'int' 型は System.Int32 であり 値型 (つまり、Javaの'int'に近いもの)。整数は(他の値型と同様に)以下のようになります。 ボックス型 ("wrap")し、オブジェクトにします。


オブジェクトとプリミティブの違いについては、この質問の範囲をやや超えていますが、要約します。

オブジェクト はポリモーフィズムのための機能を提供し、参照渡し (正確には値渡し) で、そして ヒープ . 逆に プリミティブ は値で渡される不変の型であり、しばしば スタック .