Table of Contents

Java Programming Notes

Singletons

//Call once on setup
PerfMonitorNode.initialize();
 
//This can be called from practically anywhere
PerfMonitorNode p = PerfMonitorNode.getInstance();
p.doStuff();
 
//Your class code
private static PerfMonitorNode instance = null;
 
public static void initialize(String nodeName) {
if (instance != null) {
	throw new IllegalStateException("PublishSubscribe already initialized.");
}
//The actual PerfMonitorNode you want to use
instance = new PerfMonitorNode(nodeName);
}
 
public static PerfMonitorNode getInstance() {
if (instance == null) {
	throw new IllegalStateException("PerfMonitorNode is not initialized.");
}
return instance;
}

Hashing

From Java-Tips.org Map is an object that stores key/volume pairs. Given a key, you can find its value. Keys must be unique, but values may be duplicated. The HashMap class provides the primary implementation of the map interface. The HashMap class uses a hash table to implementation of the map interface. This allows the execution time of basic operations, such as get() and put() to be constant.

This code shows the use of HashMap. In this program HashMap maps the names to account balances.

import java.util.*;
 
public class HashMapDemo {
 
  public static void main(String[] args) {
 
    HashMap hm = new HashMap();
    hm.put("Rohit", new Double(3434.34));
    hm.put("Mohit", new Double(123.22));
    hm.put("Ashish", new Double(1200.34));
    hm.put("Khariwal", new Double(99.34));
    hm.put("Pankaj", new Double(-19.34));
    Set set = hm.entrySet();
 
    Iterator i = set.iterator();
 
    while(i.hasNext()){
      Map.Entry me = (Map.Entry)i.next();
      System.out.println(me.getKey() + " : " + me.getValue() );
    }
 
    //deposit into Rohit's Account
    double balance = ((Double)hm.get("Rohit")).doubleValue();
    hm.put("Rohit", new Double(balance + 1000));
 
    System.out.println("Rohit new balance : " + hm.get("Rohit"));
 
  }
}