2013-08-19 9 views
5

Ich bin ein Java-Entwickler und groovy heute das Lernen aber groovy ist mit meinem Gehirn durcheinander, es gibt Dinge, die ich brauche Hilfe mit und großen von ihnen ist hier aufgelistet:
Kartenschlüssel sind Objekte oder nicht in Groovy?

def map = [inm1:'hello',int2f:'world'] 
map.keySet().each{ 
println it.class.name 
println "values of Key"+it.charAt(2) 
} 

In obigem Code inm1 und int2f sind normale Variablen in Java, aber in groovy sind sie String-Werte und nicht nur die Variablen mit String-Werten, sie sind eigentlich String-Objekte.
Aber es sind Strings dann warum nicht einfach oder doppelt "oder" zitiert. Ich konnte dieses Konzept nicht verstehen und ich will nur Ihre Hilfe schlecht.
Auch stellen Sie mir einige Ressourcen groovy zu lernen, fand ich viele Ressourcen aber sie nehmen die Dinge wie oben zu leicht erwähnt.

Antwort

15

Einfache Tasten werden automatisch in Strings in Groovy umgewandelt, wie es regelmäßige Erstellung von Karten simplifys.

Wenn Sie Schlüssel von Variablen bewerten, dann müssen Sie sie setzen in Klammern, dh:

Integer inm1 = 10 
String int2f = 'hello' 

// Regular map with string keys 
assert [ inm1:'hello', int2f:'world' ] == [ 'inm1':'hello', 'int2f':'world' ] 

// And evaluated keys in parentheses 
assert [ (inm1):'hello', (int2f):'world' ] == [ 10:'hello', 'hello':'world' ] 
+0

Los geht's !! genau das, was ich hören musste. Danke man!! –

+0

alles was du über Lernressourcen sagen willst –

+1

Momentan ist es [das Wiki] (http://groovy.codehaus.org/Collections), oder das Groovy In Action Book (obwohl das ziemlich alt ist). [MrHaki's Groovy Goodness Blog] (http://mrhaki.blogspot.co.uk/search/label/Groovy%3AGoodness) ist eine ziemlich gute Quelle für Erklärungen. PS: Das Groovy Wiki ist ziemlich alt und in Orte veraltet. Es gibt einen [neuen laufenden Dokumentationsaufwand hier] (https://github.com/groovy/groovy-core/tree/documentation/src/spec/doc) der die Dinge stark verbessern sollte :-) –

Verwandte Themen