增加一段java代码,要求成语接龙出题时不出接不上的
时间: 2023-07-03 20:28:25 浏览: 67
好的,以下是一个简单的成语接龙代码,其中添加了判断接龙是否合法的功能:
```java
import java.util.ArrayList;
import java.util.List;
import java.util.Random;
import java.util.Scanner;
public class IdiomGame {
private static final String[] idioms = {"一马当先", "九牛二虎之力", "画龙点睛", "四面楚歌", "金玉满堂", "珠光宝气", "独孤求败", "龙飞凤舞", "卧虎藏龙", "虎头蛇尾", "井底之蛙", "鹤立鸡群", "鸡犬不宁", "狐假虎威", "亡羊补牢"};
private static boolean isLegal(String idiom1, String idiom2) {
if (idiom1.charAt(idiom1.length() - 1) != idiom2.charAt(0)) {
return false;
}
if (usedIdioms.contains(idiom2)) {
return false;
}
return true;
}
private static String getRandomIdiom() {
Random random = new Random();
int index = random.nextInt(idioms.length);
return idioms[index];
}
private static List<String> usedIdioms = new ArrayList<>();
public static void main(String[] args) {
String lastIdiom = null;
while (true) {
String idiom;
if (lastIdiom == null) {
idiom = getRandomIdiom();
System.out.println("AI: " + idiom);
lastIdiom = idiom;
usedIdioms.add(idiom);
} else {
Scanner scanner = new Scanner(System.in);
idiom = scanner.nextLine();
if (isLegal(lastIdiom, idiom)) {
System.out.println("AI: " + idiom);
lastIdiom = idiom;
usedIdioms.add(idiom);
} else {
System.out.println("AI: 你输了,你的成语不符合规则!");
break;
}
}
}
}
}
```
在这个代码中,新增了一个方法 `isLegal`,用于判断当前输入的成语是否符合接龙规则。它的实现很简单,只需要判断上一个成语的最后一个字和当前成语的第一个字是否相同,以及当前成语是否已经被使用过即可。如果不符合规则,则输出一个提示信息并结束程序。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.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)