Java如何得出文本与数组第一个匹配到的字符串

我原本是这样写的
text = input.nextLine();

for (int i = 0; i < keyword.length; i++) {
if(text.contains(keyword[i])) {
System.out.println("tell me more about " + keyword[i] + "..");
}

但是这样的话如果我有keyword abc 和cba
如果我输入了:cba abc
它还是先会得到abc 因为abc 在数组里第一个出现
请问怎么改善这个情况使先得出的内容是句子里先出现的呢 谢谢

/*
醉了,看了好久:
你思路:你输入的为一整排字符串,与另外一排整排字符串进行对比
需要找出与你,输入第一次字符串里面的一个小部分,与另外整排字符串中的一小部分进行匹配,
拿到第一次匹配到的!
你这么做就简单,切割一下,切成字符串数组,然后拿你输入后的结果去匹配目的地字符串就可以
*/
import java.util.Scanner;
public class InputTest {
    static Scanner sc=new Scanner(System.in);
public static void main(String[] args) {
//数组!
String[] srr= {"keyword","abc","cba"};
//输入!
String[] trr=sc.nextLine().split(" ");
for(int i=0;i<trr.length;i++) {
for(int j=0;j<srr.length;j++) {
if(srr[j].equals(trr[i])) {
System.out.println(trr[i]);
return;
}
}
}
}
}

追问

应该也是一模一样的 但是怎么还是闲的出的abc

追答

贴一下你现在的代码,完整的,要上班啦...要就赶快哦!

温馨提示:答案为网友推荐,仅供参考

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网