Can Java use String as an index array key? (ex: array["a"]=1;)
No - you want a map to do that:
Map<String, Integer> map = new HashMap<>();map.put("a", 2);
Then to get it:
int val = map.get("a"); //2
You can only use the square bracket syntax for arrays, not for any of the collections. So something like:
int val = map["a"]; //Compile error
Will always be illegal. You have to use the get()
method.