我有一个数组:
["Front", "Front", "Back", "Back", "Side", Side]
我需要做的是返回特定字符串的所有匹配事件的索引。例如,如果输入:"Front"
,则应返回[0,1]
,输入"Side"
,返回[4,5]
,"Back"
将返回[2,3]
如何有效地在Java中实现这一目标?
答案 0 :(得分:1)
试试这个
String inPut="Side";
String data [] = {"Front", "Front", "Back", "Back", "Side", "Side"};
ArrayList positions=new ArrayList();
for(int i=0;i<data.length;i++)
{
if(inPut.equals(data[i]))
{
positions.add(i);
}
}
System.out.println(positions);
}
输出
[4, 5]
尝试更改输入
答案 1 :(得分:-2)
试试这个,如果你想到任何改进,请留下反馈。 让我们说数组被声明为
string sArr [] = ["Front", "Front", "Back", "Back", "Side", "Side"];
在某处设置输入等input == "Front"
ArrayList list <int> = new ArrayList<int>();
for(int i = 0; i < sArr.length; i++ ){
if(sArr[i].equals( input) ){
list.add(i);
}
}
整数的最终arraylist提供索引。