2013-08-09 15 views
17

w języku C#, gdy chcę wiedzieć, czy obiekt jest instancją określonego rodzaju lub nie, mogę użyć „to” operator:C# „jest” alternatywny operator w Javie

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

jak mogę zrobić to w java? (Wiem, że mogę używać oświadczenie spróbować w inny sposób?)

Odpowiedz

19

Java równoważne:

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

byłoby użyć instanceof - to odpowiednik is w C#. Zauważ, że nie ma odpowiednika as.

Zobacz JLS section 15.20.2 Więcej szczegółów instanceof, ale to w zasadzie takie same jak is:

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

instanceof jest równoważne Java dla operatora C# is.

5

Spróbuj czegoś takiego: -

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

wierzę, jest to, czego szukasz

3

w Javie można wykorzystać "instancją" zamiast "jest"

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