用java输入一个长度小于100的字符串,除去重复字符,并按照从小到大排序后输出。
时间: 2024-02-05 10:13:13 浏览: 78
以下是使用Java实现的代码:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String str = scanner.nextLine();
char[] charArray = str.toCharArray();
Set<Character> set = new HashSet<>();
for (int i = 0; i < charArray.length; i++) {
set.add(charArray[i]);
}
List<Character> list = new ArrayList<>(set);
Collections.sort(list);
for (char c : list) {
System.out.print(c);
}
}
}
```
首先,使用Scanner类从标准输入读取字符串。然后,将字符串转换为字符数组,并使用Set集合去重。接着,将Set集合转换为List集合,并使用Collections类的sort方法对List进行排序。最后,遍历排序后的List并输出每个字符。
相关问题
Java输入一个长度小于100的字符串,除去重复字符,并按照从小到大排序后输出。
以下是Java代码实现:
```java
import java.util.Arrays;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
char[] charArray = input.toCharArray();
boolean[] exists = new boolean[128]; // 标记字符是否已存在
int count = 0; // 记录不重复字符的数量
for (char c : charArray) {
if (!exists[c]) {
exists[c] = true;
count++;
}
}
char[] result = new char[count]; // 存储不重复字符
int index = 0;
for (int i = 0; i < charArray.length; i++) {
if (exists[charArray[i]]) {
result[index++] = charArray[i];
exists[charArray[i]] = false;
}
}
Arrays.sort(result); // 排序
System.out.println(new String(result));
}
}
```
程序运行时,会提示输入一个长度小于100的字符串。输入后,程序会先遍历一遍字符串,记录下每个字符是否已存在,并计算出不重复字符的数量。然后再遍历一遍字符串,将不重复的字符存储到数组中,并将对应的标记重置为false。最后对数组进行排序,并输出结果。
使用Java输入一个长度小于100的字符串,除去重复字符,并按照从小到大的排序输出
以下是使用Java实现该功能的代码:
```java
import java.util.Scanner;
import java.util.TreeSet;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String input = scanner.nextLine();
TreeSet<Character> set = new TreeSet<>();
for (int i = 0; i < input.length(); i++) {
set.add(input.charAt(i));
}
for (char c : set) {
System.out.print(c);
}
}
}
```
首先,我们使用`Scanner`类获取用户输入的字符串。然后,我们使用`TreeSet`类来自动去重并按照从小到大排序。我们遍历输入字符串中的每个字符,将其加入`TreeSet`集合中。最后,我们遍历集合中的每个字符,并按顺序输出。
阅读全文