如何使用java.util.scanner显示建议列表

时间:2018-05-12 09:21:58

标签: java

大家早上好,

我试图做一个简单的自动完成系统。

我有一个包含40个名字的列表。

我的目标是向用户显示所有以与键盘输入相同的3首字母开头的名字。

目前,为此,我使用java.util.Scanner

private String getEntry() {
    Scanner sc = new Scanner(System.in);
    return sc.nextLine();
}

所以,我需要一个"事件"或者是一个"听众"检测他何时输入3个字母以查找并显示所有相应的地方,即使该条目未完成。

如果输入的3个字符没有地名,则显示任何内容。

此外,如果他输入4个字母,5个字母等,自动完成系统也必须工作,并找到所有以相同的4或5个首字母开头的名称。

可以这样做吗?

(我希望我的解释清楚)。

非常感谢!

1 个答案:

答案 0 :(得分:1)

你必须谷歌魔术结构:后缀树。它将解决您的问题。

PS如果你只有40个名字 - 然后使用全扫描。这个小名字的数量很简单快捷。