文章目录
String s = "{\n" +
" \"name\":[\"op\",\"pl\",\"zs\"],\n" +
" \"age\":[\"11\",\"12\"],\n" +
" \"sex\":\"F\",\n" +
" \"class\":[\"ONE\",\"TWO\"]\n" +
" \n" +
"}";
Map<String, Object> parse = JSON.parseObject(s, Map.class);
List<String> rowkeys = new ArrayList<>();
List<String> temp = new ArrayList<>();
List<String> arr = new ArrayList<>();
arr.add("name");
arr.add("age");
arr.add("sex");
arr.add("class");
for (String a : arr) {
Object o = parse.get(a);
if (o instanceof List) {
List<String> os = (List<String>) o;
for (int i = 0; i < os.size(); i++) {
if (rowkeys.size() > 0) {
for (int i1 = 0; i1 < rowkeys.size(); i1++) {
temp.add(rowkeys.get(i1) + "_" + os.get(i));
}
} else {
temp.add(os.get(i));
}
if (i == os.size() - 1) {
rowkeys.clear();
rowkeys.addAll(temp);
temp.clear();
}
}
} else {
for (int i1 = 0; i1 < rowkeys.size(); i1++) {
temp.add(rowkeys.get(i1) + "_" + o);
if (i1 == rowkeys.size() - 1) {
rowkeys.clear();
rowkeys.addAll(temp);
temp.clear();
}
}
}
}
System.out.println(rowkeys.toString());