在一个成语接龙程序中要求写一段java代码,实现在输出题目中的成语前先判断它的最后一个字符在成语列表里有没有开头的的成语
时间: 2024-02-29 14:53:19 浏览: 24
好的,以下是Java代码实现:
```java
import java.util.ArrayList;
import java.util.Scanner;
public class IdiomGame {
public static void main(String[] args) {
ArrayList<String> idiomList = new ArrayList<>();
idiomList.add("一马当先");
idiomList.add("先发制人");
idiomList.add("人云亦云");
idiomList.add("云开见月");
idiomList.add("月白风清");
Scanner scanner = new Scanner(System.in);
System.out.println("请输入一个成语:");
String input = scanner.nextLine();
while (!input.equals("exit")) {
boolean flag = false;
String lastChar = input.substring(input.length() - 1);
for (String idiom : idiomList) {
if (idiom.startsWith(lastChar)) {
System.out.println(idiom);
idiomList.remove(idiom);
flag = true;
break;
}
}
if (!flag) {
System.out.println("没有找到符合条件的成语,请重新输入:");
} else {
System.out.println("请输入一个成语:");
}
input = scanner.nextLine();
}
scanner.close();
}
}
```
在这个例子里,我们定义了一个字符串类型的列表 `idiomList`,并向其添加了一些成语。然后,我们使用 `Scanner` 对象读取用户输入的成语。接着,我们从输入的成语中取出最后一个字符,并遍历 `idiomList` 列表,查找以这个字符开头的成语。如果找到了,就输出该成语,并从列表中将其删除。如果没有找到,就提示用户重新输入。当用户输入 `exit` 时,程序退出。