Java 出身の C# 初心者です。特定のオブジェクトが Number であるかどうか (Integer、Double、Float など) を確認したいと考えています。Java では、 と言ってこれを行いましたif (toRet instanceof Number)
。似たような C# のようなものがあることを願っif (toRet is Number)
ていますが、これまでのところ、これを行う Number クラスを見つけることができませんでした。これを行う方法はありますか、または整数、倍精度などを手動で確認する必要がありますか?
詳細については編集してください:基本的に私がやりたいことは、最終的にバイト配列を持つことです。ただし、配列がテキスト ファイルに格納されている場合、私が使用しているパーサーは、それが整数配列または double 配列であると判断することがあります。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
整数として解析されることもあれば、double として解析されることもあり、バイトとして解析されることはめったにありませんが、最後に本当に気にするのはバイト値だけです。