我是一个新手,从Java来到了C#,我想检查某个对象是否为数字(它可以是整数、双精度浮点数、浮点数等)。在Java中,我使用
编辑获取更多信息:基本上我想要的是最后有一个字节数组,但当这个数组存储在文本文件中时,我正在使用的解析器有时会将其视为整数数组或双精度浮点数数组。在Java中,我有这样的代码:
重要的部分在于if语句。有时,
if(toRet instanceof Number)
实现这个功能。希望有类似于if(toRet is Number)
的C#方法,但目前我还没有找到可以实现此功能的Number类。有没有办法做到这一点,或者我必须手动检查整数、双精度浮点数等呢?编辑获取更多信息:基本上我想要的是最后有一个字节数组,但当这个数组存储在文本文件中时,我正在使用的解析器有时会将其视为整数数组或双精度浮点数数组。在Java中,我有这样的代码:
JSONArray dblist = (JSONArray)result_;
byte[] reallyToRet = new byte[dblist.size()];
Object toComp = dblist.get(0);
if (toComp instanceof Number)
for (int i=0; i < dblist.size(); ++i) {
byte elem = ((Number) dblist.get(i)).byteValue();
reallyToRet[i] = elem;
}
return reallyToRet;
}
重要的部分在于if语句。有时,
dblist
中的对象会被解析为整数,有时为双精度浮点数,只有很少情况下才会被解析为字节,但最终我真正关心的是字节值。
object
参数的方法)并不是一个好主意。如果需要此类内容,请提供相关上下文代码。 - Federico BerasateguiNumber
的类,甚至像Byte
、Double
、Integer
或Short
这样的类都继承自它。 - Tim SchmelterFile.ReadAllText()
或类似方法并自行解析值。在.NET中不需要这样的东西。此外,请发布您需要读取的示例数据片段(文本文件)。在C#中不需要这样的“解析器”或其他任何东西。 - Federico Berasateguiis IConvertible
,这是所有你感兴趣的值类型都实现的接口。无论如何,你需要它来实际获取值。 - Hans Passant