1/16
Looks like no tags are added yet.
Name | Mastery | Learn | Test | Matching | Spaced | Call with Kai | Chat |
|---|
No analytics yet
Send a link to your students to track their progress
Welche Basen gibt es im r Stellenwertsysteme?
Dual → Basis 2
Oktal → Basis 8
Dezimal → Basis 10
Hexadezimal → Basis 16
Zweierpotenzen bis 2⁸
2⁰ = 1
2¹ = 2
2² = 4
2³ = 8
2⁴ = 16
2⁵ = 32
2⁶ = 64
2⁷ = 128
2⁸ = 256
Wie rechne ich Potenzen richtig?
Immer zuerst die Potenz berechnen.
Beispiel:
2³ = 8
Nicht:
2 × 3 = 6
Sondern:
2 × 2 × 2 = 8
Was ist 2⁰?
2⁰ = 1
Merksatz:
Jede Zahl (außer 0) hoch 0 ergibt 1.
Binärzahl → Zweierpotenzen
101001₂
=
2⁵ + 2³ + 2⁰
Zweierpotenzen → Binärzahl
2⁵ + 2² + 2⁰
=
100101₂
grosse dezimal zahl umwandeln
Beispiel:
2048 = 2¹¹
Deshalb:
2048₁₀ = 100000000000₂
Nur die Stelle 2¹¹ ist 1.
Alle anderen Stellen sind 0.
Welche Ziffern benutzt das Hexadezimalsystem?
0 1 2 3 4 5 6 7 8 9 A B C D E F
A = 10
B = 11
C = 12
D = 13
E = 14
F = 15
zb.
A3₁₆ = 10×16¹ + 3×16⁰
Wie wandelt man eine Binärzahl in Hexadezimal um?
11010110₂
1101 | 0110 (aufteilen)
1101 = D
0110 = 6
= D6₁₆
andersrum genauso
Was ist das Oktalsystem?
Basis 8
0 1 2 3 4 5 6 7
2³ = 8. == 000 bis 111
bsp dual zu oktal
110101₂
110 | 101
110 = 6
101 = 5
= 65₈
Wie vergleiche ich, ob zwei Strings den gleichen Text enthalten?
a[i].equals(b[i]) // true, wenn der Text gleich ist ("abc" == "abc")
Inhaltsvergleich: Mit .equals()
Wie vergleiche ich, ob zwei Variablen auf dieselbe Speicheradresse zeigen?
Referenzvergleich: Mit ==
a[i] == b[i] // true, wenn selbe Hauptspeicheradresse (Heap) // auch normal für primitive Datentypen
Welcher Fehler passiert bei == für Strings?
== prüft bei Objekten NUR die Adresse! Zwei Strings mit dem Text "abc" an verschiedenen Adressen liefern bei ==false, aber bei .equals() true.
array in string spiegeln mit dem selben Inhalt
public static String[] vertauscheInhalt(String[] feld) {
String[] spiegel = new String[feld.length];
for (int i = 0; i < feld.length; i++) {
// Lies im Original von 'i' (vorne) und schreibe in 'spiegel' nach hinten:
spiegel[spiegel.length - 1 - i] = new String(feld[i]);
}
return spiegel;
}
Wann benutze ich @Override und wann NICHT?
Gehört @Override über jede Methode, die einen String zurückgibt?
Woran erkenne ich sofort, ob ich @Override schreiben muss?
Nein! Nicht bei jeder String-Methode!
@Override steht NUR über Methoden, die es bereits in einer Elternklasse, der Ur-Klasse (Object) oder einem Interface gibt.
Die Faustregel-Frage:
"Gab es diese Methode (Name + Parameter) schon vor meiner Klasse?"
JA ? dann MIT @Override:
public String toString() (gibt es in Object)
public boolean equals(Object o) (gibt es in Object)
Jede geerbte Methode aus extends oder implements
NEIN ? dann OHNE @Override:
Eigene Getter: public String getName()
Eigene Hilfsmethoden: public String textFormatieren()
Deine Array-Methoden: public String[] vertauscheInhalt(...)
Wie greife ich in einer for-Schleife auf das Attribut eines Objekts in einem Array zu und gebe das Ergebnis per return zurück?
Beispiel: Prüfe für jedes Objekt im Array pListe, ob vorstrafen > 0 ist.
public String meineMethode(Person[] pListe) {
String ergebnis = "";
for (int i = 0; i < pListe.length; i++) {
// 1. Objekt holen & Methode aufrufen:
if (pListe[i].getVorstrafen() > 0) {
// 2. Verarbeiten:
ergebnis = ergebnis + pListe[i] + "\n";
}
}
// 3. Ausspucken:
return ergebnis;
}
Wann und wie benutze ich
instanceofund Casting(Typ), obwohl das gar nicht explizit in der Aufgabe steht?Signal-Situation in der Klausur:
Du bekommst ein Array der Oberklasse (z. B.
Person[]), sollst aber Attribute/Methoden prüfen, die nur in der Unterklasse existieren (z. B.getMotiv()inVerdaechtiger).
Signal erkennen: Methode verlangt Oberklasse (Person), aber du brauchst Extra-Attribute der Unterklasse (Verdaechtiger).
Filter einbauen (instanceof): Erst prüfen, ob das Objekt überhaupt zur Unterklasse gehört (verhindert Programm-Absturz).
Brille aufsetzen (Casting): Das Objekt in den Typ der Unterklasse umwandeln, um die Methoden freizuschalten.
ava
for (int i = 0; i < personen.length; i++) { // 1. AUSSORTIEREN: Ist personen[i] überhaupt ein Verdächtiger? if (personen[i] instanceof Verdaechtiger) {
// 2. BRILLE AUFSETZEN: In Verdaechtiger umwandeln (Casting) Verdaechtiger v = (Verdaechtiger) personen[i];
// 3. JETZT KANNST DU DIE EXTRA-ATTRIBUTE PRÜFEN! if (v.getMotiv() != null && v.hasAlibi() == false) { return v; // Treffer zurückgeben! } }}