Java Binärcode invertieren?
In Java Zeichenkette(String) Ziffernfolge invertiert?
Also 0->1 und 1->0
3 Antworten
Es gibt ne replace Methode für Strings. Dieser Methode musst du einfach nur ein Zeichen übergeben und das Zeichen angeben, durch das ersetzt werden soll.
z.B.
String binaerzahl="1011010";
String invertiert=binaerzahl.replace("0", "2").replace("1","0").replace("2", "1");
System.out.println(invertiert);
Hab ich gerade auch gemerkt als ich es laufen lies. Man muss zuerst die 0 durch 2 ersetzen, dann die 1 durch 0 und am Ende die 2 durch 1 dann passt es.
string strNeueKette = "";
foreach (char bin in input)
if (bin == '0')
strNeueKette += "1";
else if (bin == '1')
strNeueKette += "0";
So würde ich es machen.
Also via Foreach durch deinen Bitcode iterieren und dann das Zeichen umdrehen und zu einem neuen String hinzufügen.
LG
Wenn ich dein Vorhaben richtig verstehe würde ich da einfach ein simples replaces rüber jagen. Erstmal können wir nicht 1 durch 0 replacen, weil wir dann nur noch 0 haben und keine 1 mehr. Also würde ich 1 zu 2 machen oder so, dann 0 zu 1 und dann 2 zu 0. Dann wären alle nullen eine 1 und umgekehrt
Das läuft leider nicht - du ersetzt alle 0en durch 1en und dann wieder zu 0en. Am Schluss hast du dann in diesem Falle nur noch "0000000".