java - 数组长度 20 但我希望它在读取最后一个节点后就中断

标签 java arrays nullpointerexception

public void showAll(){//to string method
    for (int i=0;i<phoneBook.length;i++){//index is going till 2 where it   
        System.out.println(phoneBook[i].toString());
    }
    //the above code iterates for 20 times because the length of the array is 20.
    public phoneBookUnsoterdOptimizedArray( )
    {  
        next = 0;
        size = 20;//this initializes the array to size 20.
        phoneBook = new PhoneBook[size];
    }//end of constructor

我尝试使用 if 语句检查 null,但这不起作用。

输出

Phone Number: 4695866399
lastName: Ayoub
First Name: Rehan
address: 9323 Amberton Pkwy
Exception in thread "main" Phone Number: 971506236329
lastName: Ayoub
First Name: Syed
address: 14th Street Nyadat
java.lang.NullPointerException
    at phonebook.phoneBookUnsoterdOptimizedArray.showAll(phoneBookUnsoterdOptimizedArray.java:74)
    at phonebook.FA2015PROJECT_Ayoub.main(FA2015PROJECT_Ayoub.java:35)

最佳答案

您可以显式检查 null:

for (int i = 0; i < phoneBook.length; i++) {
    if (phoneBook[i] == null) {
        break;
    }
    System.out.println(phoneBook[i].toString());
 }

关于java - 数组长度 20 但我希望它在读取最后一个节点后就中断,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33764780/

相关文章:

java - 查找在多个 servlet 映射场景中使用的匹配 url 模式

java - getModifiers() 方法如何计算多个修饰符的值?

java - 我应该在远程工作站的哪个位置放置 CSV 配置文件以进行分布式 JMeter 测试?

arrays - 将二维变体数组的一维提取到字符串

c++ - 扩展的初始化列表和数组

java - 字符串比较抛出 NullPointerException

java - 在 JFrame 中键入会出现错误

java - libgdx 中的多个摄像头(在其他框架中可能类似)

java - 在 JTabbedPane 中设置特定选项卡的可见性

python - 如何从文件中的每个其他值中减去每个第一列值?