【编程】完成rejetRepeatedChars函数,从给定的字符串中剔除连续字符,只保留一个,比如aaabbbcdc,处理完之后返回abcdc。
private static String rejetRepeatedChars(String str) {
		if (str == null || str.trim().length() == 0)
			return null;
		char temp = str.charAt(0);
		StringBuilder sb = new StringBuilder(temp + "");
		for (int i = 1, n = str.length(); i < n; i++) {
			if (temp != str.charAt(i)) {
				temp = str.charAt(i);
				sb.append(temp);
			} 
		}
		return sb.toString();
	} object = 'aaabbbcdc'
target = ""
alpha = ""
for i in object:
    if alpha != i:
        alpha = i
       target += alpha public class Test { 
      public String rejetRepeatedChars(String s) {
        List data = new ArrayList(); 
          for (int i=0;i<s.length();i++){
            String str=s.substring(i,i+1); 
               if (!data.contains(str)){
                data.add(str);
            }
        }
        String result = ""; 
         for (String ss : data) {
             result += ss;
        } 
             return result;
    } 
    public static void main(String[] args) {
        Test mTest = new Test();
        String str = mTest.rejetRepeatedChars("aaabbbcdcefffeed");
        System.out.print(str);
    }
} public class StringDel {
	public static void main(String[] args) {
		String s1 = "aaabbbcdc";
		rejetRepeatedChars(s1);
		String s2 = "absdfffa";
		rejetRepeatedChars(s2);
		String s3 = "abcdefg";
		rejetRepeatedChars(s3);
	}
	public static void rejetRepeatedChars(String str) {
		char chars[] = str.toCharArray();
		char charsResult[] = new char[str.length()];
		int k = 0;
		char temp = chars[0];
		charsResult[k] = temp;
		k++;
		for (int i = 1; i < chars.length; i++) {
			if (temp != chars[i]) {
				temp = chars[i];
				charsResult[k] = temp;
				k++;
			}
		}
		String result = new String(charsResult);
		if (result.indexOf('\u0000') != -1) {
			result = result.substring(0,result.indexOf('\u0000'));
		}
		System.out.println("原字符串:\n" + str);
		System.out.println("剔除连续字符后:\n" + result);
		System.out.println("-----------------");
	}
}
 import java.util.HashMap;
import java.util.Iterator;
import java.util.Map;
import java.util.Map.Entry;
//完成rejetRepeatedChars函数,从给定的字符串中剔除连续字符,
//只保留一个,比如aaabbbcdc,处理完之后返回abcdc
public class Test2 {
    public String rejetRepeatedChars(String s){
        Map<String,String> hm=new HashMap<>();
        String temp;
        StringBuilder sb=new StringBuilder();
        for(int i=0;i<s.length();i++){
            temp=s.substring(i,i+1);
            if(!hm.containsKey(temp)){
                hm.put(temp, temp);
            }
        }
        //HashMap遍历
        //法1:推荐
        /*for(Entry<String,String> entry:hm.entrySet()){
            sb.append(entry.getValue());
        }*/
        //法2:推荐
        Iterator<Entry<String,String>> it=hm.entrySet().iterator();
        while(it.hasNext()){
            Entry<String,String> entry=it.next();
            sb.append(entry.getValue());
        }
        //法3:最慢
        /*for(String key:hm.keySet()){
            sb.append(hm.get(key));
        }*/
        return sb.toString();
    }
    public static void main(String[] args){
        Test2 t=new Test2();
        System.out.print(t.rejetRepeatedChars("abbbbccccccd"));
    }
}
#include <iostream>
#include <string>
//#include <vector>
using namespace std;
int main()
{   
	string InputStr,OutputStr;
	cin>>InputStr;  
	int lenIn=InputStr.length();
	int i;
	int flag = 0;
	OutputStr.push_back(InputStr[0]);
	for(i = 1; i <lenIn; i++)     
	{ 
		if(InputStr[i] == InputStr[i-1])
		{ 
			flag = 1; 
		} 
		else
			flag = 0;
		if(flag==0)
		{ 
			OutputStr.push_back(InputStr[i]);
		}        
	} 
	for (int i = 0; i<=OutputStr.size() - 1; i++)
	{
		cout << OutputStr[i] ;
	}
	return 0;
}
 import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
public class Main {
	public String rejetRepeatedChars(String s){
		
		char a[]=s.toCharArray();
		Set set=new LinkedHashSet();
		for(int i=0;i<a.length;i++){
			
			String j=String.valueOf(a[i]);
			set.add(j);			
		}
		Iterator<String>it=set.iterator();
		StringBuilder sb=new StringBuilder();
		while(it.hasNext()){
			sb.append(it.next());
		}
		return sb.toString();
	}
	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Main m=new Main();
		String ss=m.rejetRepeatedChars("aaabbbcdc");
	    System.out.print(ss);	
		
	}
}
 public static String rejetRepeatedChars(String in) { if (in == null || in.trim().equals("")) return in; final char[] chars = in.toCharArray(); char last = chars[0]; StringBuilder sb = new StringBuilder(); sb.append(chars[0]); for (char c : chars) { if (last != c) sb.append(c); last = c; } return sb.toString(); }