@Override public String toString() {
        final StringBuffer buf = new StringBuffer("arrayObject(data=[");
        final int dataLength = Array.getLength(this.data);
        for (int i = 0; i < dataLength - 1; i++) {
            buf.append((Array.get(this.data, i)).toString());
            buf.append(", ");
        }
        if (dataLength > 0) {
            buf.append((Array.get(this.data, dataLength - 1)).toString());
        }
        buf.append("], typecode=");
        buf.append(this._typecode);
        buf.append(", start=");
        buf.append((new Integer(this.start)).toString());
        buf.append(", dimensions=[");
        for (int i = 0; i < this.dimensions.length - 1; i++) {
            buf.append((new Integer(this.dimensions[i])).toString());
            buf.append(",");
        }
        if (this.dimensions.length > 0) {
            buf.append((new Integer(this.dimensions[this.dimensions.length - 1]))
                    .toString());
        }
        buf.append("], strides=[");
        for (int i = 0; i < this.strides.length - 1; i++) {
            buf.append((new Integer(this.strides[i])).toString());
            buf.append(",");
        }
        if (this.strides.length > 0) {
            buf.append((new Integer(this.strides[this.strides.length - 1]))
                    .toString());
        }
        buf.append("])");
        return buf.toString();
    }