如何解决线程“ main”中的异常java.lang.NullPointerException错误

肉山

我在Java程序上遇到问题。线程“主”中的异常

java.lang.NullPointerException
at twoten.TwoTenB.<init>(TwoTenB.java:29)
at javapractice.JavaPractice.main(JavaPractice.java:32)
Java Result: 1 

是我得到的错误。我真的可以使用一些帮助,因为我在这个地方呆了几个小时...

package twoten;

import java.util.Scanner;

public class TwoTenB {

public TwoTenB() {
    double percentage;
    double a[] = null;
    double total = 0;
    double var;
    System.out.print("\tRESULT\n\n");
    Scanner scan = new Scanner(System.in);
    //double[] mark = new double[7];
    for (int i = 0; i < 7; i++) {

        System.out.print("\nMarks in subject " + (i + 1) + "\t:\t");
        var = scan.nextDouble();

        a[i] = var;

        total = total + a[i];
       //percentage = first * second * third * fourth * fifth * sixth * seventh * 100 / 700;
    }

    percentage = total * 100 / 700;

    if (a[0] > 35 && a[1] > 35 && a[2] > 35 && a[3] > 35 && a[4] > 35 && a[5] > 35 && a[6] > 35 && percentage > 35) {
        if (percentage >= 60) {
            System.out.print("\nCongratulation!!! you've got FIRST dividion\n");
        } else if (percentage >= 45 && percentage < 60) {
            System.out.print("\nCongratulation!!! you've got SECOND dividion\n");
        } else if (percentage >= 35 && percentage < 45) {
            System.out.print("\nCongratulation!!! you've got THIRD dividion\n");
        }
    } else {
        System.out.print("\nSORRY!!! you've FAILED\n");
    }
    }
}
路易吉·门多萨(Luiggi Mendoza)

这就是问题

double a[] = null;

因为anull,所以NullPointerException每次使用它都会出现,直到您对其进行初始化。所以这:

a[i] = var;

将失败。

可能的解决方案是在声明时将其初始化:

double a[] = new double[PUT_A_LENGTH_HERE]; //seems like this constant should be 7

IMO比解决此异常更为重要的事实是,您应该学会阅读stacktrace并理解它的含义,以便可以发现问题并加以解决。

java.lang.NullPointerException

此异常表示存在一个使用了null的变量怎么解决?只需确保变量没有null被使用即可。

在twoten.TwoTenB。(TwoTenB.java:29)

该行包括两个部分:

  • 首先,显示引发错误的类和方法。在这种情况下,它是在package声明的中的at<init> 方法当您遇到带有的错误消息时,表示在创建类的新实例(例如执行构造函数)时抛出了错误(在这种情况下,这似乎是问题所在)。TwoTenBtwotenSomeClassName.<init>
  • 其次,显示引发错误的文件和行号的位置,该位置在括号之间。这种方法更容易发现错误发生的位置。因此,您必须查看文件TwoTenB.java,第29行。这似乎是a[i] = var;

从这一行,其他行将类似,以告诉您错误发生在哪里。因此,在阅读本文时:

在javapractice.JavaPractice.main(JavaPractice.java:32)

这意味着您正在尝试包中声明的类TwoTenBmain方法内部实例化对象引用JavaPracticejavapractice

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何解决线程“ main”中的异常java.lang.NullPointerException

异常线程“main”显示java.lang.NullPointerException以及如何解决它?

无法修复线程“main”中的错误异常 java.lang.NullPointerException

如何解决线程“ main”中的异常java.lang.NoClassDefFoundError

我如何解决此错误线程“主”中的异常java.lang.NoClassDefFoundError:javax / crypto / SecretKey

线程“主”中的java异常java.lang.NullPointerException错误

java错误:线程“ main”中的异常java.lang.NoClassDefFoundError

如何解决java.lang.NullPointerException?

错误:线程“主”中的异常java.lang.NullPointerException

“线程“主”中的异常java.Lang.NullPointerException”错误

错误:线程“main”中的异常 java.lang.ArrayIndexOutOfBoundsException

线程“main”中的错误异常 java.lang.RuntimeException

线程“main”中的异常java.lang.NoClassDefFoundError:解决方案(错误名称:解决方案)

“java.lang.NullPointerException”错误(错误详情,文章中有)我该如何解决?

转换为MYSQL时Java中的线程“ main”中的异常java.lang.NullPointerException

如何解决Java中的NullPointerException错误?

如何修复“线程“main”中的异常java.lang.ClassNotFoundException:”错误?

java.lang.NullPointerException 问题如何解决

线程“主”中的异常java.lang.NoSuchMethodError:主-如何解决该问题?

使用Jaxb unmarshal / marshal时,线程“ main”中的异常java.lang.NullPointerException

运行Web Scrap程序时出现“线程“主”中的异常java.lang.NullPointerException”错误

线程“ AWT-EventQueue-0”中的异常java.lang.NullPointerException登录表单错误

在线程“主”中获取错误异常java.lang.NullPointerException

完成所有说明后,跳过Selenium Webdriver测试,并给出java.lang.NullPointerException错误,我该如何解决?

HibernateSearch ElasticSearch集成错误:线程“ main”中的异常java.lang.ExceptionInInitializerError

Spring Boot jar 启动错误:线程“main”中的异常 java.lang.NoClassDefFoundError

线程“ main”中的异常java.lang.NoClassDefFoundError:错误的名称-命令提示符

锯齿状数组循环中线程“main”java.lang.ArrayIndexOutOfBoundsException中的错误异常

java.lang.NoClassDefFoundError如何解决此错误