如何从main访问有关数组的方法

时间:2018-02-22 01:18:20

标签: java arrays instance

public class Prog19_01 {

      int [] list;
      int size;

    public void bubbleSort()
    {
        for ( int i = 0; i < list.length - 1; i++)
            for (int j = 0; j < list.length - i - 1; j ++)
                if (list [j] > list [j+1] )
                {
                    // awap list {j} and list {j+1}
                    int temp = list [j];
                    list[j] = list [j+1];
                    list [j+1] = temp;
                }
    }

    public void fillArray()
    {
        for ( int i = 0; i < list.length; i++)
        {
            list [i] = (int)(Math.random()*100); 
        }
    }

    public void printArray()
    {
         for ( int i = 0; i < list.length; i++)
         {
             System.out.println( list[i]);
         }
    }

    public static void main(String[] args) {  

       // I want to be able to do something like list.fillArray(); and 
       // list.printArray() but it doesnt work it reads
    }
}

有人说要做 Prog19_01 array = new Prog19_01(); 能够访问它工作的方法。谁能解释一下为什么这段代码?

现在当我这样做的时候 array.fillArray();

它给了我 线程“main”java.lang.NullPointerException中的异常     在prog19_01.Prog19_01.fillArray(Prog19_01.java:30)     在prog19_01.Prog19_01.main(Prog19_01.java:46) C:\ Users \ casti \ AppData \ Local \ NetBeans \ Cache \ 8.2 \ executor-snippets \ run.xml:53:Java返回:1 BUILD FAILED(总时间:0秒)

指向fillArray上的一行 for(int i = 0; i&lt; list.length; i ++)

和我一样的错误 array.printArray();

指向printArray上的行  for(int i = 0; i&lt; list.length; i ++)

0 个答案:

没有答案