这个是什么类型呢???????

来源:百度知道 编辑:UC知道 时间:2024/06/27 08:47:29
public class ListLinked
{
static ListLinked newNode = null;
static int info = 4;

public static void main(String [] args)
{
System.out.println(newNode.info instanceof Object);
}
}
System.out.println(newNode.info instanceof Object);

会是什么类型呢?newNode.info]

返回的当然是*****意外的类型*********

加上System.out.println(String.valueOf(newNode.info )instanceof String);

他就是String。。。。这个我知道。。。我不明白他为什么是错的
难道就是错了就是错了,不知道为什么错了吗?

如果newNode.info 是Object的实例,则会返回true ,否则返回false

newNode是一个ListLinked类型的(没有用new的话,不能算是实例)变量,newNode.info则是int类型.

int是Java的八种基本类型之一,在Java中八种基本类型不是对象.所以你的
System.out.println(newNode.info instanceof Object); 编绎应该无法通过,会报错的吧.

如果你改成Integer.valueOf(newNode.info) instanceof Object的话.就会在控制台打印出true.

Java中的instanceof是判断前面那个newnode.info是不是object类型的,如果是就会返回TRUE
你运行一下程序就知道看了