2012-07-20 56 views
-2

如何检查对象是否为字符串类型?如何检查Java对象是否是字符串?

+1

'obj instanceof String'? – 2012-07-20 16:17:17

+1

更好的问题是:你为什么要设计需要检查的代码?这通常是一个不好的迹象。多态性应该是事物。 – duffymo 2012-07-20 17:11:16

回答

8
if(object instanceof String) 
{ 
    // Do Stuff 
} 
1
if(obj instanceof String) {} 

是检查你有对象的方式为String

3

像这样:

Integer myInt = 3; 
if (myInt instanceof String) 
    System.out.println("It's a String!"); 
else 
    System.out.println("Not a String :("); 
+0

这是一个不好的例子,因为String已经声明为String,而不是Object(或String的其他超类)。 – Bananeweizen 2012-07-21 06:15:03

+0

这会让你快乐吗? – jrad 2012-07-21 15:05:34

+0

我认为更多的是声明一个Object,因为声明一个Integer或一个String使得这是一个编译时决定。只有超级类型的String(既不是Integer也不是String),这是一个运行时决定。但无论如何,我删除了我的弃权票。 – Bananeweizen 2012-07-21 15:10:00

3

通过在Java中使用instanceof操作:

if(object instanceof String){ 
    System.out.println("String object"); 
    // continue your code here 
} 
else{ 
    System.out.println("it is not a String"); 
} 
相关问题