2016-09-30 171 views
0

我正在学习Javapoet作为一些协议模型对象自动生成的候选人。 Grat API!Javapoet - TypeName - HashMap <String,HashMap <String,List <String> >> generation?

问题: 我可以生成复杂类型一样的领域:

TypeName myType = HashMap<String, HashMap<String, List<String>>>;

例如,如果我要得到简单的类型名: “HashMap的< 字符串,字符串>” - 我可以很容易地实现它通过:

ParameterizedTypeName.get(Map.class,String.class,字符串。类);

预先感谢您!

回答

0

java.lang.IllegalArgumentException异常:索引6 '$ T' 不在范围内(接收5个参数)

因此,你不能产生一些FIE

1

import java.util.ArrayList \t ; 
 
import java.util.HashMap; 
 
import java.util.List; 
 
import java.util.Set; 
 

 
public class EX1 { 
 
\t public static void main(String[] args) { 
 

 
\t HashMap<String,HashMap<String,List>>outerhashmap=new HashMap<>(); 
 
\t HashMap<String,List>innerhashmap=new HashMap<>(); 
 
\t List l=new ArrayList(); 
 
\t l.add("shine"); 
 
\t l.add("unicorn"); 
 
\t l.add("twister"); 
 
\t l.add("twister"); 
 
\t List l1=new ArrayList(); 
 
\t l1.add("passon"); 
 
\t l1.add("splender"); 
 
\t l1.add("karizma"); 
 
\t 
 
\t innerhashmap.put("HONDA", l); 
 
\t innerhashmap.put("HERO", l1); 
 
\t 
 
\t outerhashmap.put("BIKE", innerhashmap); 
 
\t 
 
\t for(HashMap.Entry<String, HashMap<String,List>>entry:outerhashmap.entrySet()){ 
 
\t \t String keys=entry.getKey(); 
 
\t \t HashMap<String, List> values=entry.getValue(); 
 
\t \t System.out.println(keys+"======="+values); 
 
\t } 
 
\t \t } 
 
}

相关问题