値の型がオブジェクトの場合(ValueTypeが実際にObjectから継承しているのを見てきました)、どうしてオブジェクトとして振る舞いませんか? nullにすることはできないため、参照を持たないように見え、ボックス化/ボックス化解除する必要があります。 paramsとして渡されると、プリミティブのように動作しますが、メソッドを呼び出すことができるので、参照型としても動作するようです。私は彼らが通常スタックに割り当てられていることを読んで、値の型のように見えるようにします。そして、限りボクシング行く、私はint型とIntegerのJavaの等価物、Int32の構造体が表示されないので、Int32がボックス化されている場合、それは何に入っていますか?.NETのプリミティブは、値の世界の半分、参照の世界の半分のように見えます
要するに、誰かが1つの世界で半分、他の世界で半分に立っているように思われる場合、私は確かにそれを感謝するでしょう。
あなたの期待を再調整する必要があります。あなたが何かがオブジェクトであるなら、それはヌル可能でなければならないと信じているようです。これがあなたの問題です。オブジェクトにnull値を設定する必要はありません。 –
なぜJavaのintとIntegerに相当するはずだと思いますか?これはおそらく、Java言語の最も愚かな設計決定の1つです! –