Auf Thema antworten

Warum eigentlich so kompliziert? Okay, vielleicht habe ich nicht ganz verstanden, was der TO will, aber hier mal Code, der ohne Schleifen auskommt:

[code=Java]    // Diese Variante brauchst du:

    public static int rotByteRight(final int value, final int pos){

        return (value >> 1 & 0xFF << pos) | (value & 0x01 << pos) << 7

            | (value & ~(0xFF << pos));

    }


    // der Vollständigkeit halber:

    public static int rotByteLeft(final int value, final int pos){

        return (value << 1 & 0xFF << pos) | (value & 0x80 << pos) >> 7

            | (value & ~(0xFF << pos));

    }

[/code]

Theoretisch würde es reichen, diese Methoden static zu machen. (Non-static ist nur dann notwendig, wenn du auch mindestens ein Objekt der Klasse für die Operationen benötigst. Da du aber nur mit int/byte rummachst, und nicht mit BitOps1-Objekten, kann man diese Methoden static machen.) Aber das hängt natürlich davon ab, was für Methoden da noch reinkommen bzw. wo und wie das benutzt werden soll.


Ark



Oben