0

ベースaからベースbへのコンバーターを作成しています。nullpointerexception があると言っています。私は本当にそれを修正する方法がわかりません。おそらくarraylistの範囲外に関係していることはわかっていますが、よくわかりません。私はJavaが初めてなので、答えを複雑にしすぎないでください。塩基を変換するライブラリ機能があることは理解していますが、私の教授は私たちに独自のものを書かせています。

nullpointerexception は、星がある場所です (** * **)

public class NumberBase {

    private static double d;

    private static int i;

    private static ArrayList <Character> c;

    private static double sum;

    private static ArrayList <Integer> result = new ArrayList <Integer>();

    public NumberBase(){
        i = 0;
        c = new ArrayList <Character>();
    }

    public static String convert(String input, int base_in, int base_out){

        while(i < input.length()){
            c.add(input.charAt(i)); (*****)
            i++;
        }

        int digit;

        i = 0;
        while(i < result.size()-1){
        digit = Character.getNumericValue(c.get(i));
        result.add(digit);
        i++;
        }

        d = toBaseTen(base_in);
        String str = "" + d;
        return str;

    }
    public static void main(String args[]){

    }

    public static double toBaseTen(int base_in){

        i--;
        while(i > 0){

            sum = result.get(i)*(Math.pow(base_in, i));
            i--;
        }
        return sum;
    }

    public int fromBaseTen(int base_out){

    }

}

4

1 に答える 1