当前位置: 首页 > 面试题库 >

抛出空指针异常

孙修贤
2023-03-14
问题内容

我正在android中做一个应用程序,因此我需要访问com.android.internal.telephony
API。现在,我可以访问这些API了,但问题是,无论我getEarliestConnection()在自己的类中调用Class
Call.java方法的什么地方,都会抛出NullPointerException。您可以在http://hi-
android.info/src/com/android/internal/telephony/Call.java.html中找到Call.java
。在此类中,有以下方法:

1.    public Connection
2.        getEarliestConnection() {
3.            List l;
4.            long time = Long.MAX_VALUE;
5.            Connection c;
6.            Connection earliest = null;
7.    
8.            l = getConnections();
9.  
10.            if (l.size() == 0) {
11.                return null;
12.            }

        for (int i = 0, s = l.size() ; i < s ; i++) {
            c = (Connection) l.get(i);
            long t;

            t = c.getCreateTime();

            if (t < time) {
                earliest = c;
                time = t;
            }
        }

        return earliest;
    }

我想在我的课堂上调用此方法。Call.java类是一个抽象类,我创建了Call类的子类,并调用了上述方法,如下所示:

Call myCall = new MyCall();
Connection myConn = new MyConn();
myConn = myCall.getEarliestConnection();

但是它NullPointerException在上面的方法的第10行和上面的代码的第3行上抛出了一个错误。


问题答案:

显然,getConnections()此处返回null,而您无法获得null对象的大小。

解决方法如下:

if (l == null || l.size() == 0) 
{
    return null;
}

因此,如果由于某些未知原因而没有Connection-List或列表为空,null将返回该列表。使用运算符||的作用与

if (l == null)
{
    return null;
}
else if ( l.size() == 0)
{
    return null;
}


 类似资料:
  • 首先,下面的代码片段是Google云项目应用程序的一部分,在我的本地客户机Raspberry Pi 1上运行。为了能够从连接到Pi的传感器向云发送数据,需要授权。所有需要的客户端机密都存储在src/main/resources中的“client_secrets.json”中。 项目层次结构 当试图使用客户端机密来授权时,下面的代码抛出一个NullPointerException。它是类“CmdLi

  • 我对spring boot和JPA相当陌生。我正在做我的学习目的的小项目。 实体类 有线索吗?

  • 问题内容: 在双头链表中,我使用了另一个链接,该链接通过copy构造函数复制到copy 。但是,当我遍历链接列表从后端插入时,它抛出了一个空指针异常。 } 问题答案: 问题似乎出在方法上。您有条件继续前进,直到node 不为null 为止: 当while循环结束时,将指向位置。然后在下一行: 现在为null,下一行: 正在尝试访问,因此是NPE的问题。您需要通过将while循环条件更改为以下内容来

  • 我对映射reduce编程是个新手,从简单的单词计数示例开始我的课程。然而,我正在尝试一种不同的方法。我的hdfs输入文件夹上有两个输入文件。我正在尝试生成类似于 我编写了一个映射器类来将单词和文件名连接在一起,但是当我在文本中设置键值时,它会抛出空指针异常。谁能帮我指点一下我哪里做错了。

  • 问题内容: 有可能这可能是一个双重问题。我将String变量初始化为null。我可能会或可能不会使用一个值更新它。现在我想检查此变量是否不等于null以及我尝试执行的操作是否会得到null指针异常。空指针异常,因为它代价高昂。是否有任何有效的解决方法.TIA 问题答案: 如果您使用 你 不会 得到。 我怀疑你在做什么: 这是因为null 而引发,而不是因为null。 如果仍然无法解释,请发布您用于

  • 我已经更新了我的项目中的一些依赖关系之后,我的Hibernate配置类显示Nullpointerx的。 我将SpringDataJPA存储库与hibernate一起使用,已经超过24小时了,仍然没有找到任何关于小问题的适当解决方案。 我已经尝试过的一些解决方案:- 使用@bean(name=“entityManagerFactory”)提供bean名称 我面临的问题 波姆。xml文件 配置类 db