Java中的C#“is”运算符替代

时间:2013-08-09 12:58:34

标签: java casting

在C#中当我想知道对象是否是特定类型的实例时,我可以使用“is”运算符:

String foo = "hi :)"
if (foo is String) ...

我怎么能在java中做到这一点? (我知道我可以使用try语句,任何其他方式?)

6 个答案:

答案 0 :(得分:21)

Java等价物:

String foo = "hi :)"
if (foo instanceof String)

答案 1 :(得分:11)

您使用instanceof - 这相当于C#中的is。请注意,没有等效的as

有关instanceof的详细信息,请参阅JLS section 15.20.2,但它与is基本相同:

// Note: no point in using instanceof if foo is declared to be String!
Object foo = "hello";
if (foo instanceof String)
{
    ...
}

答案 2 :(得分:6)

instanceof是与C#is运算符等效的java。

答案 3 :(得分:6)

尝试这样的事情: -

String foo = "hi :)"
if (foo instanceof String)
{
 ......
}

答案 4 :(得分:5)

if (foo instanceof String)

我相信你正在寻找

答案 5 :(得分:4)

在java中,您可以使用“instanceof”而不是“is”

String foo = "hi :)"
if (foo instanceof String)