为什么我的程序中出现了java.lang.NullPointerException?我没有看到任何问题

时间:2017-04-20 10:34:50

标签: java

找到任何数字的最大prme因子的程序。

// Program to get the largest prime factor of a number

import java.util.*;

class factor{

    ArrayList<Long> a;

    public void large(long n){
        for(long i = 1; i <= n; i++){
            if (n % i == 0){
                a.add(i);
            }   
         }
        System.out.println(Collections.max(a));
   }
}

class test{
     public static void main(String[] args){
         factor g = new factor();
         g.large(13195);
     }
}

1 个答案:

答案 0 :(得分:0)

在调用任何方法之前,您需要初始化列表。

class Factor{

    List<Long> a = new ArrayList<>();

    public void large(long n){
        for(long i = 1; i <= n; i++){
            if (n % i == 0){
                a.add(i);
            }   
         }
        System.out.println(Collections.max(a));
   }
}