gpt4 book ai didi

c# - .Net - 转换或转换装箱字节?,简而言之?还是整数?到整数?

转载 作者:太空宇宙 更新时间:2023-11-03 17:44:35 26 4
gpt4 key购买 nike

如果我有一个引用 byte?short?int?object 引用,是有没有办法无条件地将对象引用强制转换或转换为 int?无需为每种情况编写单独的代码?

例如:

byte? aByte = 42; // .. or aByte = null
object anObject = aByte;
//...
var anInt = (int?)anObject //As expected, doesn't work

最佳答案

我会使用 Convert.ToInt32(object) :

object o = ...; // Boxing...
int? x = o == null ? (int?) null : Convert.ToInt32(o);

请注意,当您装箱 int?short?byte? 时,您总是以空引用或装箱结束不可为 null 的值 - 不存在诸如“盒装可为 null 的值”之类的东西。

Convert.ToInt32 将适用于您提到的所有盒装类型 - 尽管它适用于字符串“42”等内容。这是一个问题?

关于c# - .Net - 转换或转换装箱字节?,简而言之?还是整数?到整数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7908101/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com