用java的方式1、判断一个字符串是否是字符,如果是,大写还是小写?如果不是,是不是数字? 2、获取键盘输入的字符串,输出其中重复的字符、不重复的字符、以及消除重复字符之后的字符串
时间: 2024-05-06 19:19:07 浏览: 9
1. 判断一个字符串是否是字符,如果是,大写还是小写?如果不是,是不是数字?
可以使用Java中的Character类来判断一个字符是否是字母或数字,并判断字母的大小写。示例代码如下:
```java
public class Main {
public static void main(String[] args) {
String str = "Aa9$";
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (Character.isLetter(c)) {
if (Character.isUpperCase(c)) {
System.out.println(c + " 是大写字母");
} else {
System.out.println(c + " 是小写字母");
}
} else if (Character.isDigit(c)) {
System.out.println(c + " 是数字");
} else {
System.out.println(c + " 不是字母也不是数字");
}
}
}
}
```
输出结果为:
```
A 是大写字母
a 是小写字母
9 是数字
$ 不是字母也不是数字
```
2. 获取键盘输入的字符串,输出其中重复的字符、不重复的字符、以及消除重复字符之后的字符串
可以使用Java中的Scanner类获取键盘输入的字符串,并使用Set集合去重,再用List集合存储重复的字符和不重复的字符。示例代码如下:
```java
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
System.out.print("请输入一个字符串:");
String str = scanner.nextLine();
Set<Character> set = new HashSet<>();
List<Character> repeatList = new ArrayList<>();
List<Character> uniqueList = new ArrayList<>();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
if (set.contains(c)) {
if (!repeatList.contains(c)) {
repeatList.add(c);
}
} else {
set.add(c);
uniqueList.add(c);
}
}
System.out.println("重复的字符为:" + repeatList);
System.out.println("不重复的字符为:" + uniqueList);
StringBuilder sb = new StringBuilder();
for (Character c : uniqueList) {
sb.append(c);
}
System.out.println("消除重复字符之后的字符串为:" + sb.toString());
}
}
```
示例输出:
```
请输入一个字符串:hello world
重复的字符为:[l, o]
不重复的字符为:[h, e, l, o, , w, r, d]
消除重复字符之后的字符串为:hel o wrd
```