可以使用以下代码来实现:
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = scanner.nextLine();
// 创建一个长度为字符串长度的布尔数组,用来记录字符是否出现过
boolean[] appeared = new boolean[str.length()];
// 遍历字符串
for (int i = 0; i < str.length(); i++) {
// 获取当前字符
char c = str.charAt(i);
// 如果当前字符没有出现过,则将出现标记设为true
if (!appeared[i]) {
appeared[i] = true;
} else {
// 否则说明该字符已经出现过,将其替换为空字符
str = str.replace(c, '\u0000');
}
}
// 去除字符串中的空字符
str = str.replace("\u0000", "");
System.out.println("删除重复字符后的字符串:" + str);
}
}
在这段代码中,我们使用了 Scanner
类来从命令行读入一个字符串,然后使用一个布尔数组来记录每个字符是否出现过。在遍历字符串的过程中,如果当前字符没有出现过,则将出现标记设为true,否则将其替换为空字符。最后,使用 String.replace()
方法将字符串中的空字符去除,最终输出删除重复字符后的