2019-11-06 16:14:55 +00:00
parent 29edf1823b
commit b761312a12

@@ -8,4 +8,12 @@
- **Call by reference, call by value**: Aufpassen auf Primitive
- Strings und Wrapper sind Sonderfälle bei (Standard)-Objekten, da immer Immutable! Können nicht verändert werden, verhalten sich daher wie value-Calls
- **String-==**: Strings, die per Konstruktor erzeugt wurden, lassen sich inhaltlich nicht per `==` prüfen, da echte Referenzen auf Heap. Strings, die per `""` erzeugt wurden, haben gleiche Referenz, wenn inhaltlich gleich und können per `==` verglichen werden. Das gilt auch, wenn die Strings in anderen Methoden erzeugt und zugewiesen werden.
- **Definition Zahlen**: `int` ist bei Ganzzahlen Standard, wenn kein Suffix. `double` ist bei GLeitkommazahlen Standard, wenn kein Suffix.
- **Definition Zahlen**: `int` ist bei Ganzzahlen Standard, wenn kein Suffix. `double` ist bei GLeitkommazahlen Standard, wenn kein Suffix.
- **+ - Operator**: Ist erlaubt, wenn ein Argument ein String ist. Dann wird toString() auf dem anderen aufgerufen (Primitive gehen auch).
- Geht: `System.out.println(new StringBuilder("Hallo ") + "Welt");`
- Geht: `System.out.println(new StringBuilder("Hallo ") + "Welt" + true);`
- Geht: `System.out.println(true + "Welt");`
- Geht: `System.out.println(new StringBuilder("Hallo ") + new StringBuilder("Welt").toString());`
- Geht **nicht**: `System.out.println(1 + true);`
- Geht **nicht**: `System.out.println(new StringBuilder("Hallo ") + new StringBuilder("Welt") + "Welt");` (Auswertung von links nach rechts)
-