java 输入一个字符串遇到数字就截掉并且排重

来源:百度知道 编辑:UC知道 时间:2024/06/20 01:14:00
比如
ascad12asd

输出ascd

import java.util.LinkedHashSet;
import java.util.Set;

public class CharAndNumber {
public static void main(String[] args) {
String a = "ascad12asd";
Set<Character> test = new LinkedHashSet<Character>();
char[] cs = a.toCharArray();
for (int i = 0; i < cs.length; i++) {
if (cs[i] >= 48 && cs[i] <= 57)
continue;
test.add(cs[i]);
}
System.out.println(test.toString());
}

}

意思是不是把ascad12asd变成ascadasd?
static public void main(String[] args) {
String a = "ascad12asd我";
StringBuffer bf = new StringBuffer(a);
for (int i = 0; i < bf.length(); i++) {
if (bf.charAt(i) >= '0' & bf.charAt(i) <= '9')//取出每个位置上的相应的char比较。如果是在1-9之间就把它移除。
{
bf.delete(i, i+1);//移除当前位置上的数字
//bf.deleteCharAt(i);意思和上面一样
i--;//移除了整体后面都会向前挪动一个 所以要i要减回去在判断当前位置是否为数字
}