最新消息: 新版网站上线了!!!

如何获取java字符串中的每一个字符并且去掉重复字符

假设这里有个字符串String s = "aaabbbbccccdddd";问,如果去除掉重复的字母重新组成一个新的字符串。有几种解法?这个过程中包含如何获取java字符串中的每一个字符

一、循环字符串,解法

好吧,第一次碰到这种问题时,我愣了3秒后,说了一种日常开发中的惯用思维。代码如下:

方法一:s.length(), s.charAt(i) 

java;toolbar:false">String s = "aaabbbbccccdddd";
List<String> list = new ArrayList<String>(); //定义对象依次存放每一个字符
  
for(int i = 0; i < str.length() ; i++){
  
  String ss = String.valueOf(str.charAt(i));
  
  list.add(ss);
}
  
System.out.println(list.toString());

这其实算是一种标准解法啦 ,表要嘲笑我这个方法蠢。当然,还是有其他比较牛逼的解法,代码如下。

方法二:s.length() ,s.subString(i,i+1)

String s = "aaabbbbccccdddd";
List<String> list = new ArrayList<String>(); //定义对象依次存放每一个字符
  
for(int i = 0; i < str.length() ; i++){
  
  String ss = String.subString(i,i+1);
  
  list.add(ss);
}
System.out.println(list.toString());

方法三:s.toCharArray(), c.size() 

String s = "aaabbbbccccdddd";
char[] c = str.toCharArray();
List<String> list = new ArrayList<String>(); //定义对象依次存放每一个字符
  
for(int i = 0; i < c.size() ; i++){
  
  String ss = c[i];
  
  list.add(ss);
}
  
System.out.println(list.toString());


转载请注明:谷谷点程序 » 如何获取java字符串中的每一个字符并且去掉重复字符