2015-03-11 6 views
5

Ich habe nach Lösungen gesucht, wie man Cookies nach ihrem Namen bekommt und alle Lösungen zeigen auf for-loops und if Aussagen. Siehe Code unten.Java: Gibt es eine einfache Möglichkeit, Cookie nach Namen zu erhalten?

Gibt es einen einfacheren Weg, um den Wert durch ihren Namen zu erhalten, ohne die Schleifen und If's zu machen?

Ich muss einige "bestimmte" Verarbeitung für bestimmte Cookies machen, die ich abrufen möchte Plus, ich möchte nicht jeden Cookie durchlaufen! Es könnte 10 oder mehr geben und alles, was ich brauche, ist nur drei oder etwas.

+0

Setzen Sie die Cookies in eine 'Map ' (oder 'Multimap'). –

+0

Oh, das könnte tatsächlich funktionieren: D Ich werde es gleich ausprobieren! Danke: D –

+2

Hinweis für die Wähler: Bitte nicht ablehnen, weil dies eine Anfängerfrage ist. Dies ist korrekt formatiert und klar angegeben, wobei der Fragesteller ein Beispiel ihres Versuchs zeigt. –

Antwort

0

Die Logik (als von Matt Ball in den Kommentare vorgeschlagen) wäre:

// ... 
Map<String, Cookie> cookieMap = new HashMap<>(); 
for (Cookie cookie : cookies) { 
    cookieMap.put(cookie.getName(), cookie); 
} 

Cookie firstRequiredCookie = cookieMap.get("<NAME>"); 
// do something with firstRequiredCookie 
Cookie nextRequiredCookie = cookieMap.get("<ANOTHER_NAME>"); 
// do something with nextRequiredCookie 
// ... 
+0

Danke, alle! : D Vergiss meine Follow-up-Frage, ich verstehe es jetzt: D DANKE! Ich hätte die Antwort verbessern können, aber mein Sprecher erlaubt mir noch nicht zu wählen. –

0

Cookie-Namen sind nicht eindeutig, so dass ein Cookie Namen als Mapkey keine ideale Ansatz.

Da Cookie-Namen nicht eindeutig sind, wurde wahrscheinlich Java API nie aktualisiert, um eine getCookieByName() Methode zur Verfügung zu stellen.

Verwandte Themen