请写Java代码。【题目描述】:从键盘输入单词字符串s和和规律字符串pattern,s中的单词以空格隔开。根据判断得出s是否符合规律,符合规律输出“true”,不符合规律输出“false”
时间: 2023-04-06 07:04:45 浏览: 84
我可以回答这个问题。以下是Java代码:
import java.util.*;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
String s = sc.nextLine();
String pattern = sc.nextLine();
String[] words = s.split(" ");
if (words.length != pattern.length()) {
System.out.println("false");
return;
}
Map<Character, String> map = new HashMap<>();
Set<String> set = new HashSet<>();
for (int i = 0; i < words.length; i++) {
char c = pattern.charAt(i);
String word = words[i];
if (map.containsKey(c)) {
if (!map.get(c).equals(word)) {
System.out.println("false");
return;
}
} else {
if (set.contains(word)) {
System.out.println("false");
return;
}
map.put(c, word);
set.add(word);
}
}
System.out.println("true");
}
}
这个程序从键盘输入单词字符串s和规律字符串pattern,然后判断s是否符合规律。如果符合规律,输出“true”,否则输出“false”。程序使用了Map和Set来存储字符和单词的对应关系,以及已经出现过的单词。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)