import java.util.*;

public class Test1 {
 void foo(String k1,String k2,String v){
  HashMap<String,HashMap<String,List<String>>> mm = new HashMap<String,HashMap<String,List<String>>>();
  HashMap<String,List<String>> m = mm.get(k1);
  if(m==null) mm.put( k1, m = new HashMap<String,List<String>>() );
  List<String> l = m.get(k2);
  if(l==null) m.put( k2, l = new ArrayList<String>() );
  l.add(v);
 }
}

せいぜいこんなとこか。
でも Autovivification の有無って静的動的関係なくね?