/**
* 获取不重复的字符串
* aabbc->abc
* @param srcStr
* @return
*/
public static String getSingleCharStr(String srcStr){
if (srcStr==null){
return null
}
if (srcStr.isEmpty()){
return null
}
String trim = srcStr.trim()
Map<Character, Integer> characterIntegerHashMap = new LinkedHashMap<>()
for (int i = 0
char c = trim.charAt(i)
if (characterIntegerHashMap.containsKey(c)){
characterIntegerHashMap.put(c,characterIntegerHashMap.get(c)+1)
}else {
characterIntegerHashMap.put(c,1)
}
}
ArrayList<CustomerStr> customerStrs = new ArrayList<>()
characterIntegerHashMap.forEach((character, integer) ->{
CustomerStr customerStr = new CustomerStr()
customerStr.setId(UUID.randomUUID().toString())
customerStr.setCharTemp(character)
customerStr.setCharCout(integer)
customerStrs.add(customerStr)
})
StringBuilder stringBuilder = new StringBuilder()
customerStrs.forEach(e->{
stringBuilder.append(e.getCharTemp())
})
return stringBuilder.toString()
}
public static String getSingleCharStr1(String srcStr){
if (srcStr==null){
return null
}
if (srcStr.isEmpty()){
return null
}
String trim = srcStr.trim()
Set<Character> characters = new LinkedHashSet<>()
for (int i = 0
characters.add(trim.charAt(i))
}
StringBuilder stringBuilder = new StringBuilder()
characters.forEach(e->{
stringBuilder.append(e)
})
return stringBuilder.toString()
}
class CustomerStr{
private String id
private Character charTemp
private Integer charCout
public String getId() {
return id
}
public void setId(String id) {
this.id = id
}
public Character getCharTemp() {
return charTemp
}
public void setCharTemp(Character charTemp) {
this.charTemp = charTemp
}
public Integer getCharCout() {
return charCout
}
public void setCharCout(Integer charCout) {
this.charCout = charCout
}
}