Java, how do I create a hash map outside of main but refer to it in main or another method
import java.util.*;
import java.util.Map.Entry;
// Create a hash map
HashMap<String, Double> hm = new HashMap<String, Double>();
// Put elements into the map
hm.put("John Doe", new Double(3434.34));
hm.put("Tom Smith", new Double(123.22));
hm.put("Jane Baker", new Double(1378.00));
hm.put("Todd Hall", new Double(99.22));
hm.put("Ralph Smith", new Double(-19.08));
class HashMapDemo
{
public static void main(String args[])
{
// Get a set of the entries
Set<Entry< String, Double> > set = hm.entrySet();
// Get an iterator
Iterator<Entry< String, Double> > i = set.iterator();
// Display elements
while(i.hasNext())
{
Entry< String, Double > me = i.next();
System.out.print( me.getKey() + ": " );
System.out.println( me.getValue() );
}
System.out.println();
// Deposit 1000 into John Doe's account
double balance = hm.get( "John Doe" ).doubleValue();
hm.put( "John Doe", new Double(balance + 1000) );
System.out.println( "John Doe's new balance: " + hm.get("John Doe"));
}
}
The problem is that you are trying to access an instance value from your static main. To fix this just make your HashMap static.
Now this line will have access to
hm