Komische Zeichen in Java

RezaScript

Bekanntes Mitglied
Hallo,

mich verwirren ziemlich die <>-Zeichen in Java. Ich weiss, dass ich darin z.B. String, int setzen kann aber ich verstehe nicht genau wo und warum ich sie setzen soll. Bei einer Variable kann ich auch einfach String bar; setzen. Wo ist da der Unterschied? Manchmal kann man sie auch setzen und sie einfach leer lassen. Kann mir das bitte jemand erklären?

Auch einige Klammern () irritieren mich etwas.

Hier ein Beispiel:

So sah mein Code aus:

Java:
Map<String, String> map = new HashMap<>();
map.put("string", "password");
Database.getData("SELECT * FROM users", map);

Das funktionierte so bestens aber ich wollte lieber alles in einer Linie haben und habe es so probiert:
Java:
Database.getData("SELECT * FROM users", new HashMap<>().put("string", "username"));

Das hat so nicht funktioniert und ich erhielt diese Fehlermeldung:
Wrong 2nd argument type. Found: 'java.lang.Object', required: 'java.util.Map'

Ich habe es dann so probiert und erhielt dann keine Fehlermeldung mehr:
Java:
Database.getData("SELECT * FROM users", (Map) new HashMap<>().put("string", "username"));

Alles in allem, 2 Fragen:
Was hat <> zu bedeuten?
Was hat (Map) zu bedeuten?

PS: So oder so, der Code hat nicht funktioniert, weil der zweite Parameter immer null ist.
 

Robat

Top Contributor
mich verwirren ziemlich die <>-Zeichen in Java. Ich weiss, dass ich darin z.B. String, int setzen kann aber ich verstehe nicht genau wo und warum ich sie setzen soll. Bei einer Variable kann ich auch einfach String bar; setzen. Wo ist da der Unterschied?
Das was dich da verwirrt nennt sich "Generics" und dienen - einfach gesagt - dazu, dass man sich bei (bspw) beim schreiben einer Klasse nicht auf einen bestimmten Datentyp festlegen muss. Nimm dir bspw. die Klasse ArrayList. Du willst ja selber bestimmen von welchem Datentyp die Elemente in der Liste sind sonst müsste man ja für jeden Datentyp eine eigene Liste implementieren und das ist nun wirklich nicht Sinn der Sache ;)
Das funktionierte so bestens aber ich wollte lieber alles in einer Linie haben
Warum? Das in eine Zeile zu klatschen fördert mEn nicht wirklich die Lesbarkeit.
Das hat so nicht funktioniert und ich erhielt diese Fehlermeldung:
Es ist logisch, dass das nicht funktionieren kann. Die Methode put() gibt dir den vorherigen Value des Keys oder null zurück. Deine Methode erwartet aber eine Map.
Ich habe es dann so probiert und erhielt dann keine Fehlermeldung mehr:
Das macht es nicht wirklich besser. Immer wenn du so ein Konstrukt (Datentyp) wert siehst, dann möchtest du wert zu dem Datentyp "casten"

Vielleicht hier ein paar weiterführende Links:
Java Typumwandlung (Cast)
Java Generics
 
X

Xyz1

Gast
In einer Zeile ginge das so, ist aber kein wirklich guter Stil, da wie von @Robat angedeutet wurde nicht lesbar :
Java:
import java.util.HashMap;
import java.util.Map;
/**
 */
public class Test {
    public static void main(String[] args) {
        System.out.println(new Test().getData(new HashMap<>(){{put("string", "password");}}));
    }
    Map<String, String> getData(HashMap<String, String> map) {
        return map;
    }
}
 

Robat

Top Contributor
Seit Java 9 ginge auch
Java:
getData(Map.of("string", "password"));
ist aber immutable..
 
Ähnliche Java Themen
  Titel Forum Antworten Datum
J ObjectOutputStream writeChars, komische Zeichen nur in 1. Zeile Java Basics - Anfänger-Themen 2
R BufferedWriter macht komische Zeichen Java Basics - Anfänger-Themen 3
C ok... der spuckt irgendwie nur komische zeichen aus.... Java Basics - Anfänger-Themen 2
G CSV Datei einlesen & komische Zeichen Java Basics - Anfänger-Themen 5
C Komische Zeichen beim Lesen aus einer .reg-Datei Java Basics - Anfänger-Themen 2
B komische NoSuchElementException Java Basics - Anfänger-Themen 18
L Compiler-Fehler Komische Ausgabe meines Programms Java Basics - Anfänger-Themen 6
D Methoden ArrayList Rückgabe bringt komische Werte Java Basics - Anfänger-Themen 12
P Erste Schritte Console - Sehr komische Ausgabe! Java Basics - Anfänger-Themen 3
S Komische ANT Warnungen Java Basics - Anfänger-Themen 4
B Komische Strings Java Basics - Anfänger-Themen 2
B komische NullPointerException Java Basics - Anfänger-Themen 5
T JDom komische Ausgabe Java Basics - Anfänger-Themen 4
E komische endlosschleife Java Basics - Anfänger-Themen 6
M txt-Datei schreiben: Es erscheinen komische Kästchen Java Basics - Anfänger-Themen 4
S Komische Feldermeldung bei Forschleife Java Basics - Anfänger-Themen 3
X Wie kann das den sein? Komische Variablenbelegung! Java Basics - Anfänger-Themen 5
G komische Ausgabe mit @.@. Java Basics - Anfänger-Themen 4
B Komische Array Ausgabe Java Basics - Anfänger-Themen 6
G ArrayList mit ArrayList als Inhalt - komische Sortierung? Java Basics - Anfänger-Themen 12
G komische sache Java Basics - Anfänger-Themen 4
M Komische Syntax bei Double-Buffering-Beispiel Java Basics - Anfänger-Themen 2
B komische NumberFormatException beim DezimalToBinär-Rechner Java Basics - Anfänger-Themen 4
E Komische Syntax Java Basics - Anfänger-Themen 3
J Quelltext mit komischen griechischen Zeichen Java Basics - Anfänger-Themen 4
T or zeichen Java Basics - Anfänger-Themen 2
L 4 stelliges Passwort aus bestimmten Zeichen. Java Basics - Anfänger-Themen 27
R Größter zusammenhängender Block gleicher Zeichen im String Java Basics - Anfänger-Themen 1
O Zahlen aus einem char-array per char + Zeichen addieren Java Basics - Anfänger-Themen 2
I Eindeutiger String mit maximaler Anzahl an Zeichen Java Basics - Anfänger-Themen 11
A String split funktioniert nicht, wenn mehr als 1 Ziffer vor dem Zeichen steht nach dem er trennen soll? Java Basics - Anfänger-Themen 4
O Array mit einem Zeichen vergleichen Java Basics - Anfänger-Themen 1
S Was bedeutet das Zeichen := Java Basics - Anfänger-Themen 9
K Wie String prüfen ob drei mal das gleiche Zeichen vorkommt? Java Basics - Anfänger-Themen 7
L Zeichen an bestimmter Stelle auslesen Java Basics - Anfänger-Themen 4
S Arrayausgabe und nur einmal ein Zeichen davor Java Basics - Anfänger-Themen 12
johnboyne Java Zeichen Trennen Java Basics - Anfänger-Themen 1
T Zeichen im String verschiebe Java Basics - Anfänger-Themen 17
J Verschieben von Buchstaben in einem String um vorgegebene Anzahl von Zeichen innerhalb eines weiteren String Java Basics - Anfänger-Themen 12
Tino1993 for-Schleife, die eine vorgegebene Anzahl von Zeichen ausgibt Java Basics - Anfänger-Themen 3
pkm Regexproblem - Wie kann ich zwei oder mehr beliebige Zeichen matchen? Java Basics - Anfänger-Themen 7
marcooooo Separator zwischen allen Zeichen eines Strings einfügen Java Basics - Anfänger-Themen 29
Dimax Erste Schritte String replace alle Zeichen Java Basics - Anfänger-Themen 10
M Regex-Ausdruck: Alle Zeichen bis auf ein bestimmtes erlauben (p{L}) Java Basics - Anfänger-Themen 5
M Regex für bestimmte Wörter bzw. bestimmte Zeichen erstellen Java Basics - Anfänger-Themen 5
F RegEx "+" nur als Zeichen, nicht als Operator oder Sonstiges Java Basics - Anfänger-Themen 2
J Zeichen im String zählen Java Basics - Anfänger-Themen 3
H Fehlerausgabe (Ungewollte Zeichen) Java Basics - Anfänger-Themen 1
N Zeichen in einem Textfeld zählen und hinterlegen Java Basics - Anfänger-Themen 6
W Einfachen, ein beliebiges Zeichen oft erkennenden Regex Parser selber schreiben - wie vorgehen? Java Basics - Anfänger-Themen 12
J Vorkommen von Zeichen Java Basics - Anfänger-Themen 44
H Verschiebung von Zeichen Java Basics - Anfänger-Themen 18
O String von vorne nach hinten an einem Zeichen Java Basics - Anfänger-Themen 10
S char auf buchstabe/zeichen prüfen Java Basics - Anfänger-Themen 1
P Zeichenkette Zeichen ausschlißen funktioniert nicht richtig Java Basics - Anfänger-Themen 9
G Teil(e) eines Strings entfernen wenn spezifische Zeichen (< & >) vorkommen Java Basics - Anfänger-Themen 5
L String auf bestimmte zeichen untersuchen Java Basics - Anfänger-Themen 9
D gebe string zurück mit von bis bestimmtes Zeichen Java Basics - Anfänger-Themen 4
L Rekursion größtes Zeichen Java Basics - Anfänger-Themen 8
S Zeichen zählen kopierter Text Java Basics - Anfänger-Themen 6
Y String auf allgemein Zeichen untersuchen Java Basics - Anfänger-Themen 3
S String trennen nach beliebigen Zeichen Java Basics - Anfänger-Themen 3
C Zeichen im String bis zu bestimmter Stelle entfernen Java Basics - Anfänger-Themen 6
S Java Text splitten mit Tabs, Zeilen, Zeichen und Klammern. Java Basics - Anfänger-Themen 6
H Zeichen im algorithmus Java Basics - Anfänger-Themen 4
S Das Anführungszeichen(") Zeichen in einen String setzen Java Basics - Anfänger-Themen 1
G Zeichen suchen und Ausgeben. Java Basics - Anfänger-Themen 3
D Input/Output Split am Zeichen | Java Basics - Anfänger-Themen 2
B zeichen eines String mit der kleinsten Frequenz zurückgeben Java Basics - Anfänger-Themen 25
m0n4ch Variablen String auf ungültige Zeichen überprüfen Java Basics - Anfänger-Themen 13
Voreck String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 9
R Zeichen in String vergleichen Java Basics - Anfänger-Themen 75
G Gibt es eine Methode die bei einem StringBuilder n mal das Zeichen c hinzufügt? Java Basics - Anfänger-Themen 6
D String Zeichen für Zeichen auslesen Java Basics - Anfänger-Themen 5
S Zeichen ab Suchstring einlesen Java Basics - Anfänger-Themen 6
Z char Array unbekanntes Zeichen selbstständig anlegen Java Basics - Anfänger-Themen 6
M Pipe-Zeichen "|" in Java Java Basics - Anfänger-Themen 1
S Zeichen von abgerundeten Rechtecken auf einem Applet Java Basics - Anfänger-Themen 5
R Anzahl von Zeichen in einem Char Array Java Basics - Anfänger-Themen 4
F StringBuilder: Zeilenumbruch nach x Zeichen ohne Worttrennung Java Basics - Anfänger-Themen 1
F Zeichen einer Datei zaehlen Java Basics - Anfänger-Themen 1
D Java doppelte Zahl/Zeichen in einem String entfernen Java Basics - Anfänger-Themen 6
W JTextField-Objekt liest Umlaute mit falschen Zeichen ein Java Basics - Anfänger-Themen 5
G zeichen einer Zeile löschen Java Basics - Anfänger-Themen 4
M problem mit diesem zeichen | Java Basics - Anfänger-Themen 10
N Bestimmte Zeichen eines Strings umwandeln Java Basics - Anfänger-Themen 4
W char-Array auf bestimmte Zeichen prüfen Java Basics - Anfänger-Themen 10
B lanterna einzelne Zeichen aus dem Terminal löschen Java Basics - Anfänger-Themen 0
S Input/Output Alphabet in eine Datei schreiben und Anzahl von Zeichen ausgeben. Java Basics - Anfänger-Themen 4
C Anzahl bestimmter Zeichen in einem String ausgeben Java Basics - Anfänger-Themen 7
I String abschneiden erste und letzte Zeichen Java Basics - Anfänger-Themen 3
X Wann schreibt man diese Syntax zeichen { } Java Basics - Anfänger-Themen 8
S Leerzeichen zwischen zwei Zeichen im String entfernen Java Basics - Anfänger-Themen 19
F Methoden split() - Mehrere Zeichen Java Basics - Anfänger-Themen 5
M Input/Output Text auf Fenster zeichen Java Basics - Anfänger-Themen 2
F In einem String nach einem String suchen und Zeichen danach ausgeben Java Basics - Anfänger-Themen 6
S Kleines Zeichen berechnen Java Basics - Anfänger-Themen 5
Q Erste Schritte Zeichen in String farblich hervorheben Java Basics - Anfänger-Themen 4
U markierten Text auf Zeichen zuvor/danach pruefen Java Basics - Anfänger-Themen 9
M Input/Output Zeichen on Konsole einlesen Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben