Character ch = 'a';
这将导致Java中的装箱,因为’a’是原始的而Character是class(包装器).在C#中:
Char ch = 'a';
不会导致装箱,因为Char不是原始类型,而是值类型类.要在C#中进行装箱,您需要将值类型的对象强制转换为对象引用.
object o = 'a';
编辑:正如HighCore在评论中所提到的,C#中的拳击机制有重要意义.将东西放入List< int>不会导致拳击和取出东西不会导致拆箱,因为整数列表是未装箱的整数的真实列表.