= #JxnPortable\docs\programmer_examples\UsingJavaAPI_4_Hashtable.jxn

ht = @Hashtable()
 = {} (java.util.Hashtable)
ht.put( "one", @Double(1.) )
 = null
ht.put( "two", @Double(2.) )
 = null
ht.put( "three", @Double(3.) )
 = null
ht.put( "four", @Double(4.) )
 = null
ht
 = {two=2.0, one=1.0, three=3.0, four=4.0} (java.util.Hashtable)
ht.size()
 = 4 (int)
ht["two"]  ! <- abbreviation of ht.get("two")
 = 2.0 (java.lang.Double)

ht2 = @Hashtable()
 = {} (java.util.Hashtable)
key = { "one", "two", "three", "four", "five" }
 = { one, two, ... five } (java.lang.String[5])
val = { "eins", "zwei", "drei", "vier", "fünf" }
 = { eins, zwei, ... fünf } (java.lang.String[5])
! since put takes parameters of type java.lang.Object JxnUnroll is used to force automatic array loop processing
ht2.put( @JxnUnroll key, @JxnUnroll val )
 = { null, null, ... null } (java.lang.Object[5])
ht2
 = {five=fünf, two=zwei, one=eins, three=drei, four=vier} (java.util.Hashtable)
ht2.size()
 = 5 (int)
ht2["three"]
 = drei (java.lang.String)