字符串去重 java

字符串去重且字符出现的先后顺序不变 java实现

package com.www.test;

import java.util.LinkedHashSet;
import java.util.Scanner;

public class a1 {

	/**
	 * @param args
	 */
	public static void main(String[] args) {
		// TODO Auto-generated method stub
		Scanner scanner =new Scanner(System.in);
		String string=scanner.nextLine();
		scanner.close();
		
		if (string==null) {
			return;
		}
		
		//方法1
		String reString="";
		char[] c=string.toCharArray();
		for (int i = 0; i < string.length(); i++) {
			if (!reString.contains(c[i]+"")) {
				reString += (c[i]+"");
			}
		}
		System.out.println(reString);
		String result=delete(string);
		System.out.println(result);
	}
	
	//方法2
	public static String delete(String string){
		LinkedHashSet hashset=new LinkedHashSet();
		StringBuilder sBuilder=new StringBuilder();
		for (int i = 0; i < string.length(); i++) {
			if (!hashset.contains(string.charAt(i))) {
				hashset.add(string.charAt(i));
				sBuilder.append(string.charAt(i));
			}
		}
		return sBuilder.toString();
	}
	
}

输出实例:

asdfeasdsxdsh
asdfexh
asdfexh

你可能感兴趣的:(剑指offer)