public void init(Object x) {
        if (x instanceof double[])
            initDouble((double[]) x);
        else if (x instanceof int[])
            initInt((int[]) x);
        else if (x instanceof boolean[])
            initBoolean((boolean[]) x);
        else if (x instanceof byte[])
            initByte((byte[]) x);
        else if (x instanceof char[])
            initChar((char[]) x);
        else if (x instanceof short[])
            initShort((short[]) x);
        else if (x instanceof long[])
            initLong((long[]) x);
        else if (x instanceof float[])
            initFloat((float[]) x);
        else
            throw new IllegalArgumentException("Datatype is not supported");
    }