Java Klasse Byte

Hallo ihr Java Gurus,

ich habe ein Problem mit der Definition einer Klasse und seinen Metoden, aus C kenne ich den Struct oder die Union das gibts in Java ja nicht. Als Java Neuling aber mit viel C Erfahrung dachte ich ich trau mir eine App Programmierung zu.

Ich möchte die Bits eines Bytes als Speicher nutzen.
Da ich nur 8 Bytes zur Verfügung habe muss ich diesen Weg wählen.
Aus C habe ich es immer so gemacht, dass ich zum Beispiel
so gesetzt habe:
byte.b.3 = 1;

Oder zum lesen:
if (byte.b.2) {}

So würde ich das jetzt auch gerne in Java machen nur hier gibts ja dann die set und get Funktionen.

byte.set(2)=1;
bzw.
if(byte.get(1)) {}

Nur ich bekomme diese Klasse irgendwie nicht definiert und mit den Methoden befüllt??

Ich weiß das es die BitSet Library gibt die habe ich auch vor zu nutzten, ich kann ja auch die Bitshift Methode nutzen >> funktioniert ja auch in Java aber was für ein Typ ist das b?

Vielen Dank schon mal im Vorraus in die Runde ;-)

Grüße Mista
 

Gucky

Top Contributor
Bits werden so gesetzt:
Java:
byte setzByte = 0;
int anzahlStellen = 5;
setzByte |= (1 << anzahlStellen);

Erfragt werden sie mit
Java:
byte testByte = 5;

int maske = 1 << pos;
boolean ist1 = (testByte & maske) == maske;

//oder

boolean ist1 = (testByte & 1<<pos) != 0;

Was meinst du mit dem b?
 
Ja ich weiß ....
BitSet ist die Klasse in der Java Library ...

gut auch
und danke das ich schreiben konnte und daher das Prob aus einem anderen Winkel betrachtet habe....



So ein anderes Problem ich habe 10 Buttons und mit Button button = (Button) v.findViewById(v.getId())
bekomme ich in meinem Handler den Button der geklickt wurde.
Nur wie mache ich nun in der switch case den jeweiligen passenden code?
An der Stelle fehlt mir igrendwie der Wert, da ich den ja mit +id erzeugen lasse ...
kann ich jetzt beim programmieren zwar für jeden Butten die Reaktion beschreiben aber was schreibe ich jetzt in in den cases?

Java:
    class onClickHandler implements View.OnClickListener {
        public void onClick(View v) {
            Button button = (Button) v.findViewById(v.getId());
            if ("On" == button.getText()){
                button.setText("Off");
            }
            else {
                button.setText("On");
            }
            v.playSoundEffect(SoundEffectConstants.CLICK);
            switch(button){
                case ("@id/button_pc"):   <----??? geht so nicht ?
                    break;
            }

        }
    }
 
Danke für deine Antwort.
das b ist aus dem struct welches ich in C erzeugt habe zum Beispiel so...

struct Byte {
bittype b0:1; /* LSB-Bits (lower adr!) */
bittype b1:1;
bittype b2:1;
bittype b3:1;
bittype b4:1;
bittype b5:1;
bittype b6:1;
bittype b7:1; /* MSB-Bits (higher address) unused */
}

Und hier fehlte mir der bittype in Java ... ;-(
aber gut bin Newby in Java...
 

Gucky

Top Contributor
Strings werden mit .equals(Object) und nicht mit == verglichen. == vergleicht nur die Bitmuster der Variablen.

Du kannst den Buttons sog. ActionCommands zuweisen. Vielleicht klappt es so, die Buttons auseinanderzuhalten.
 
Hallo Gucky,
erst mal danke für deine Antwort.
Aber der Vergleich funktioniert.
Ob der Interpreter aus dem == ein equal macht weiß ich nicht aber links und rechts des Operators steht der selbe Typ.
Das ist auch nicht mein Problem.

Ich weiß, bzw. der Handler bekommt über die View Klasse und die Metode findview eine Id die auf Button gecasted wird. Damit kann ich die Widget Klasse Button nutzen und mit der Metode Text diesen abfragen und benötige nicht eine weitere Variable für den toggle Modus des Buttons.

Diesen Button nun im switch case abzufragen geht nicht da der switch einen Integer erwartet.
Jetzt nochmal über findview den Int zubekommen mache ich ja aber wie bekomme ich über diesen Int den Button im case?
Logisch sehe ich ja den ersten Butten, hier habe ich den Button gezählt und weiss es ist der erste Button und kann code dazu programmieren, aber im falle meines xml layout habe ich ja keine Numer vergeben sondern ich habe @+id/button_pc genutzt und Java Interpreter macht in der R-Klasse eine Nummer.
Also find ich wärend der Programmierung die zuordnung nicht oder welche Methode der R Klasse gibt mir den Namen des Buttons?

Sorry, oder denke ich um die Ecke ?
Danke!!

case.png
 
Zuletzt bearbeitet:

Joose

Top Contributor
Ob der Interpreter aus dem == ein equal macht weiß ich nicht aber links und rechts des Operators steht der selbe Typ.
Das ist auch nicht mein Problem.

Kann funktionieren muss aber nicht! Daher lieber gleich richtig machen :)

Ich weiß, bzw. der Handler bekommt über die View Klasse und die Metode findview eine Id die auf Button gecasted wird. Damit kann ich die Widget Klasse Button nutzen und mit der Metode Text diesen abfragen und benötige nicht eine weitere Variable für den toggle Modus des Buttons.........

Bitte mache für dein Android Problem einen eigenen Thread im richtigen Bereich auf und besprich hier nur dein Problem mit der Klasse Byte.
 

VfL_Freak

Top Contributor
Moin,

Aber der Vergleich funktioniert.
Ob der Interpreter aus dem == ein equal macht weiß ich nicht aber links und rechts des Operators steht der selbe Typ.

Das ist auch nicht mein Problem.
Doch! Ist es .... der Interpreter ändert hier in Prinzip gar nichts !

Java:
if( "On" == button.getText() )
Falls den Text, der auf den Button steht, vergleichen willst, ist dies DEFINITIV falsch !!
Hiermit vergleichst Du die Referenzen !!

Java Blog Buch : 03.02 Strings vergleichen
Galileo Computing :: Java ist auch eine Insel - 4 Der Umgang mit Zeichenketten

Also mach es richtig:
Java:
if( button.getText().equals( "On") )

Gruß
Klaus
 
Hallo Klaus,
danke für deinen HInweiß ich werde es so umsetzten die Frage die ich mir dann stelle ist warum meckert das AStudio nicht und warum funktioniert es einwandfrei ohne absturz?

gruß Mista
 

Gucky

Top Contributor
Meckern tut es nicht, weil das ein vollkommen legitimer Vergleich ist. Es werden nur halt die Bitmuster der Variablen verglichen, sprich: der Speicherort des referenzierten Objektes.

Warum es funktioniert: Die JVM kann Strings in einer Art String Pool speichern. So wird Speicherplatz und Laufzeit gespart. So kommt es, dass zwei Strings mit demselben Inhalt auf denselben Speicherplatz referenzieren können.
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
P Meldung aus Java-Klasse in Thread an aufrufende Klasse Java Basics - Anfänger-Themen 1
Simon16 Java ArrayListe von einer Klasse sortieren Java Basics - Anfänger-Themen 2
frager2345 Optional Klasse Java Java Basics - Anfänger-Themen 2
frager2345 Singleton-Muster Java ->Nur eine Instanz einer Klasse erzeugen können Java Basics - Anfänger-Themen 45
frager2345 Java Klasse Buch verwalten Java Basics - Anfänger-Themen 0
frager2345 Java eigen Klasse zum verwalten von Büchern Java Basics - Anfänger-Themen 3
M Java Klasse Object Java Basics - Anfänger-Themen 5
Y Java andere Klasse aufrufen Java Basics - Anfänger-Themen 6
S Java Array Länge aus anderer Klasse lesen Java Basics - Anfänger-Themen 1
J Compiler-Fehler Java findet main Klasse nicht Java Basics - Anfänger-Themen 16
I Schleife fragt Wert ab bis 0 kommt (mit IO.java klasse) Java Basics - Anfänger-Themen 16
AssELAss Klassen Java Klasse in main-methode ausführen Java Basics - Anfänger-Themen 7
W Erste Schritte füllen Attribute java Klasse in for Schleife und Array Java Basics - Anfänger-Themen 16
Q ArrayList mit eigener Klasse in Java sotieren Java Basics - Anfänger-Themen 2
I Java Eingabe aus einer anderen Klasse in eine andere an Konstruktor übergeben Java Basics - Anfänger-Themen 4
T syntaktisch minimale Java Klasse Java Basics - Anfänger-Themen 7
K Wofür wird heute noch die Stack Klasse in Java genutzt Java Basics - Anfänger-Themen 4
S Warum sind Attribute der Klasse java.awt.Point public? Java Basics - Anfänger-Themen 3
K OOP duplicate class, öffentliche Klasse in unterschiedlichen Java Dateien speichern? Java Basics - Anfänger-Themen 3
L Klassen JAVA Klasse in JSP einbinden Java Basics - Anfänger-Themen 4
K Klasse in eingener *.java-Datei Java Basics - Anfänger-Themen 5
K JDK-Version einer kompilierten Java-Klasse? Java Basics - Anfänger-Themen 6
P java.lang.ClassNotFoundException obwohl Klasse vorhanden Java Basics - Anfänger-Themen 6
T Klasse in Java für doppelt verkettete Listen Java Basics - Anfänger-Themen 4
C import von Java Klasse ohne package Java Basics - Anfänger-Themen 10
H Warum Java? | Abstrakte Klasse = Modul? Java Basics - Anfänger-Themen 20
S Einbinden von Jar-Bibliotheken in Java-Klasse Java Basics - Anfänger-Themen 7
M Zeitdauer-Klasse (zeit in java) Java Basics - Anfänger-Themen 9
M Java Heap Space durch Übergang von einer Klasse in die ander Java Basics - Anfänger-Themen 3
G Daten aus HTML-Formular an Java-Klasse weiterreichen Java Basics - Anfänger-Themen 7
HaukeG Java Klasse generieren Java Basics - Anfänger-Themen 3
G Java-Klasse aus Java-Script aufrufen Java Basics - Anfänger-Themen 3
R Java-Klasse importieren Java Basics - Anfänger-Themen 12
G Java Klasse durch eine andere Java Klasse starten? Java Basics - Anfänger-Themen 13
K java.lang.NoClassDefFoundError: Klasse (wrong name... Java Basics - Anfänger-Themen 17
W Klasse in eine extra Java-Datei Java Basics - Anfänger-Themen 21
M java klasse ausführen Java Basics - Anfänger-Themen 4
M Hilfe bei Java-Klasse Java Basics - Anfänger-Themen 3
J Welche Parameter bei java um Klasse aus Package zu starten? Java Basics - Anfänger-Themen 9
P Batchdatei zum Starten einer Java-Klasse Java Basics - Anfänger-Themen 13
S Klasse Scanner unter Java nicht gefunden Java Basics - Anfänger-Themen 3
H .java Dateien in Eclipse einbinden und ausführen Java Basics - Anfänger-Themen 1
onlyxlia Schlüsselworte Was meint man mit "einen Typ" in Java erstellen? Java Basics - Anfänger-Themen 2
O Java Kara geschweifte Klammern Java Basics - Anfänger-Themen 2
richis-fragen Mausrad logitech kann links und rechts klick wie in java abragen. Java Basics - Anfänger-Themen 15
XWing Java Klssenproblem Java Basics - Anfänger-Themen 4
R Umgebungsvariable java -cp gibt immer Java-Hilfe... Java Basics - Anfänger-Themen 3
farbenlos Csv Datei in Java einlesen Java Basics - Anfänger-Themen 18
F TableModelListener: java.lang.ArrayIndexOutOfBoundsException: 132 Java Basics - Anfänger-Themen 3
G Java 8 - Support-Ende Java Basics - Anfänger-Themen 7
T Java Weihnachtsbaum + Rahmen Java Basics - Anfänger-Themen 1
N Will mit Java anfangen Java Basics - Anfänger-Themen 13
Ü Java Array - Buchstaben als Zahlen ausgeben Java Basics - Anfänger-Themen 22
M Java Iterator Verständnisfrage Java Basics - Anfänger-Themen 6
M Java Mail Programm Java Basics - Anfänger-Themen 4
Sniper1000 Java 391 für Windows Java Basics - Anfänger-Themen 37
J Java long- in int-Variable umwandeln Java Basics - Anfänger-Themen 6
JaZuDemNo Java im Studium Java Basics - Anfänger-Themen 7
E Java Programm zur anzeige, ob Winter- oder Sommerzeit herrscht Java Basics - Anfänger-Themen 62
I QR code in Java selber generieren Java Basics - Anfänger-Themen 5
V Java-Ausnahmebehandlung: Behandlung geprüfter Ausnahmen Java Basics - Anfänger-Themen 1
krgewb Java Streams Java Basics - Anfänger-Themen 10
A Überwältigt von der komplexen Java Welt Java Basics - Anfänger-Themen 29
O Mehrfachvererbung auf Spezifikations- und Implementierungsebene in Java. Interfaces Java Basics - Anfänger-Themen 19
John_Sace Homogene Realisierung von Generics in Java ? Java Basics - Anfänger-Themen 19
R mit Java API arbeiten Java Basics - Anfänger-Themen 9
P JDK installieren Probleme bei der Java-Installation Java Basics - Anfänger-Themen 8
S Java: Wie sortiere ich eine ArrayList benutzerdefinierter Objekte nach einem bestimmten Attribut? Java Basics - Anfänger-Themen 2
Timo12345 JNLP File mit Java öffnen Java Basics - Anfänger-Themen 2
S Video Editierung mit Java.._ Java Basics - Anfänger-Themen 2
F Einstelungen in Java - CursorBlinkRate Java Basics - Anfänger-Themen 10
A PHP $_POST["name"] in Java Java Basics - Anfänger-Themen 3
vivansai21 Is there a oneliner to create a SortedSet filled with one or multiple elements in Java? Java Basics - Anfänger-Themen 9
Athro-Hiro Weißes Bild in Java erstellen Java Basics - Anfänger-Themen 3
Arjunreddy Can someone please tell me how to use a debugger in BlueJ(a Java environment) Java Basics - Anfänger-Themen 1
M Java assoziationen (UML) Java Basics - Anfänger-Themen 8
H Excel-Tabellen mit Java erstellen Java Basics - Anfänger-Themen 4
P Wie kann ich in meinem Java Programm etwas dauerhaft speichern? Java Basics - Anfänger-Themen 5
H Nutzt Eclipse alle CPU-Threads beim Ausführen von Java-Programmen? Java Basics - Anfänger-Themen 4
xXGrowGuruXx Java einstieg, leichte sache 0 verstanden Java Basics - Anfänger-Themen 7
A java.sql.SQLException: Data type mismatch. Java Basics - Anfänger-Themen 1
H Java-Programm zur Ausgabe von Zuständen Java Basics - Anfänger-Themen 80
N Java Spiel Figur auf dem Hintergrundbild bewegen. Java Basics - Anfänger-Themen 11
G Kann Java-Programm nicht als jar aufrufen, auch als EXE nicht Java Basics - Anfänger-Themen 19
N Java Taschenrechner hat Jemand vlt einen Tipp dafür wie ich jetzt die buttons verbinden kann und das Ergebnis auf dem textfield anzeigen lassen kann Java Basics - Anfänger-Themen 13
A Lerngruppe Java Java Basics - Anfänger-Themen 2
G Help me in the Java Program Java Basics - Anfänger-Themen 2
L Java- Vererbung Java Basics - Anfänger-Themen 4
LimDul Suche Java Stream Tutorial Java Basics - Anfänger-Themen 2
_so_far_away_ Ich möchte Java lernen Java Basics - Anfänger-Themen 11
benny1993 Java Programm erstellen für ein Fußball-Turnier Java Basics - Anfänger-Themen 3
M Datentypen While-Schleife eine Java Methode erstellen Java Basics - Anfänger-Themen 3
V Bild per Java Script austauschen Java Basics - Anfänger-Themen 7
MoxMorris this Keyword in Java Java Basics - Anfänger-Themen 14
D Wie kann man in Java nach Arrays auf Duplikate prüfen Java Basics - Anfänger-Themen 12
wolei JAVA Zeitdifferenz feststellen. Java Basics - Anfänger-Themen 4
DiyarcanZeren Rekursion in Java Java Basics - Anfänger-Themen 5
wolei Java generic interface in a generic class Java Basics - Anfänger-Themen 6
monsterherz Ablauf der Erstellung eines Java Programmes Java Basics - Anfänger-Themen 17
monsterherz Circle.java:5: error: <identifier> expected Java Basics - Anfänger-Themen 2

Ähnliche Java Themen

Neue Themen


Oben