为什么需要将值(例如short)转换为string,然后转换为Int32。 为什么它不能从short转换为Int 32?
答案 0 :(得分:8)
甚至不需要进行任何明确的转换:
short s = 23;
int k = s;
此外,任何数字文字(没有任何类型的后缀)无论如何都是int32。
- 编辑
不需要显式强制转换的原因是因为short
总是小于int
,因此short
总是完全符合{{1}的大小所以没有潜在的数据丢失。
答案 1 :(得分:4)
你不需要这个,因为你可以施放:
short shortNumber = 11;
int notAsShortNumber = (int)shortNumber;