package com.company;
import java.lang.reflect.Array;
import java.util.*;
public class Test2 {
public static void main(String[] args) {
String[] s = {"ate","att","test","ttes","tae"};
System.out.println(new Test2().stringGroup(s));
}
public List<List<String>> stringGroup(String[] strs){
if(strs == null || strs.length == 0){
return new ArrayList<>();
}
Arrays.sort(strs);
Map<String,List<String>> map = new HashMap<>();
for(String str : strs){
char[] c = str.toCharArray();
Arrays.sort(c);
String sortedStr = String.valueOf(c);
if(!map.containsKey(sortedStr))
map.put(sortedStr,new ArrayList<>());
map.get(sortedStr).add(str);
}
return new ArrayList<>(map.values());
}
}
结果显示为下图: