16. 编写一个Java程序,输入一个字符串,查找其中第一个不重复的字符并输出它的下标。 17. 编写一个Java程序,输入两个字符串并比较它们的字典序。 18. 编写一个Java程序,输入一个字符串,用给定的字符替换其中所有的指定字符。 19. 编写一个Java程序,输入一个字符串,计算其中的所有单词的个数。 20. 编写一个Java程序,输入一个字符串,把其中的所有单词按照字典序排序并输出结果。
时间: 2024-02-06 08:11:17 浏览: 28
好的,我会为您解答这些问题。
16. Java程序如下:
```java
import java.util.LinkedHashMap;
import java.util.Map;
import java.util.Scanner;
public class FindFirstNonRepeatedCharacter {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = sc.nextLine();
Map<Character, Integer> map = new LinkedHashMap<>();
for (int i = 0; i < str.length(); i++) {
char c = str.charAt(i);
map.put(c, map.getOrDefault(c, 0) + 1);
}
for (Map.Entry<Character, Integer> entry : map.entrySet()) {
if (entry.getValue() == 1) {
System.out.println("第一个不重复的字符为:" + entry.getKey() + ",下标为:" + str.indexOf(entry.getKey()));
return;
}
}
System.out.println("字符串中没有不重复的字符。");
}
}
```
17. Java程序如下:
```java
import java.util.Scanner;
public class CompareStringsLexicographically {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入第一个字符串:");
String str1 = sc.nextLine();
System.out.println("请输入第二个字符串:");
String str2 = sc.nextLine();
int result = str1.compareTo(str2);
if (result > 0) {
System.out.println(str1 + " 按字典序排列在 " + str2 + " 后面。");
} else if (result < 0) {
System.out.println(str1 + " 按字典序排列在 " + str2 + " 前面。");
} else {
System.out.println(str1 + " 和 " + str2 + " 相等。");
}
}
}
```
18. Java程序如下:
```java
import java.util.Scanner;
public class ReplaceCharactersInString {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = sc.nextLine();
System.out.println("请输入要替换的字符:");
char targetChar = sc.nextLine().charAt(0);
System.out.println("请输入替换成的字符:");
char replaceChar = sc.nextLine().charAt(0);
String result = str.replace(targetChar, replaceChar);
System.out.println("替换后的字符串为:" + result);
}
}
```
19. Java程序如下:
```java
import java.util.Scanner;
public class CountWordsInString {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = sc.nextLine().trim();
int count = 0;
if (str.length() > 0) {
count++;
for (int i = 0; i < str.length(); i++) {
if (str.charAt(i) == ' ' && i + 1 < str.length() && str.charAt(i + 1) != ' ') {
count++;
}
}
}
System.out.println("单词个数为:" + count);
}
}
```
20. Java程序如下:
```java
import java.util.Arrays;
import java.util.Scanner;
public class SortWordsInString {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串:");
String str = sc.nextLine();
String[] words = str.split("\\W+");
Arrays.sort(words);
System.out.println("按字典序排序后的单词为:");
for (String word : words) {
System.out.print(word + " ");
}
}
}
```