Java从对象类型获取函数

Java从对象类型获取函数,java,Java,我有 公共对象获取(int索引) { 如果(索引您应该进行验证,因为x可以null。当x=null时,x.getTitle()变为null.getTitle(),这会导致NullPointerException for(int i = 0; i < paintings.size(); i++){ Painting x = (Painting) paintings.get(i); System.out.println((i+1) + ": " + x.getT

我有

公共对象获取(int索引)
{

如果(索引您应该进行验证,因为
x
可以
null
。当
x=null
时,
x.getTitle()
变为
null.getTitle()
,这会导致
NullPointerException

for(int i = 0; i < paintings.size(); i++){
        Painting x = (Painting) paintings.get(i);
        System.out.println((i+1) + ": " + x.getTitle());
}

您应该进行验证,因为
x
可以是
null
。当
x=null
时,
x.getTitle()
变为
null.getTitle()
,这会导致
NullPointerException

for(int i = 0; i < paintings.size(); i++){
        Painting x = (Painting) paintings.get(i);
        System.out.println((i+1) + ": " + x.getTitle());
}

如果该索引中没有任何内容,则返回
null
,然后执行
x(null).getTitle()
导致
NullPointerException

for(int i = 0; i < paintings.size(); i++){
        Painting x = (Painting) paintings.get(i);
        System.out.println((i+1) + ": " + x.getTitle());
}

只需在调用该方法之前添加一个null检查。

如果该索引中不存在任何内容,则返回
null
,然后执行
x(null).getTitle()
导致
NullPointerException

for(int i = 0; i < paintings.size(); i++){
        Painting x = (Painting) paintings.get(i);
        System.out.println((i+1) + ": " + x.getTitle());
}

只需在调用该方法之前添加一个空检查。

为什么不向我们展示
getTitle()
方法?@blackSmith,这里不需要它。为什么不向我们展示
getTitle())
method?@blackSmith这里不需要这个。事实上,我意识到我真正的问题是我的linkedlist的第一个索引实际上是1而不是0,但这也有助于防止链接列表为空并且用户打印出它的内容,所以谢谢。事实上我意识到我真正的问题是我的linkedlist的第一个索引实际上是1而不是0,但这也有助于防止链接列表为空并且用户打印出其内容,因此非常感谢。