Java 验证两个值是否包含在同一索引的单独ArrayList中
我有两个数组列表:phNumbers和pinNumbers。两者都具有相同数量的元素。我试图检查给定的值是否在第一个phNumbers中,如果是,则在phNumbers数组列表的哪个索引处找到该值。然后,我希望检查第二个值是否位于先前标识的索引处的pinNums ArrayList中 这是我的代码,所以目前:Java 验证两个值是否包含在同一索引的单独ArrayList中,java,for-loop,arraylist,Java,For Loop,Arraylist,我有两个数组列表:phNumbers和pinNumbers。两者都具有相同数量的元素。我试图检查给定的值是否在第一个phNumbers中,如果是,则在phNumbers数组列表的哪个索引处找到该值。然后,我希望检查第二个值是否位于先前标识的索引处的pinNums ArrayList中 这是我的代码,所以目前: for(int i = 0; i < phNumbers.size() && i < pinNums.size(); i++){ index1 = ph
for(int i = 0; i < phNumbers.size() && i < pinNums.size(); i++){
index1 = phNumbers.indexOf(i);
index2 = phNumbers.indexOf(i);
index3 = pinNums.indexOf(i);
if(phNumbers.get(i).equals(details[1].trim()) && pinNums.get(index1+1).equals(details[2].trim())){
//send response1
}
else if(phNumbers.get(i).equals(details[1].trim()) && !pinNums.get(index2+1).equals(details[2].trim())){
//send response2
}
else if(pinNums.get(i).equals(details[2].trim()) && !phNumbers.get(index3+1).equals(details[1].trim())){
//Send response3
}
else{
//send response4
}
}
for(int i=0;i
我遇到的问题是,它不适用于第一个元素之外的任何元素,因此我假设这是我的for循环的问题。有人能提供一些帮助吗 因此,首先,如果您有一个phNumber数组列表和一个phNumber字符串,请尝试以下操作
ArrayList<String> phNumbers = new ArrayList<>();
phNumbers.add("aaa");
phNumbers.add("bbb");
phNumbers.add("ccc");
phNumbers.add("ddd");
ArrayList<String> pinNums = new ArrayList<>();
pinNums.add("ddd");
pinNums.add("bbb");
pinNums.add("ccc");
pinNums.add("aaa");
for (int i = 0; i < phNumbers.size(); i++) {
for (int j = i; j < pinNums.size(); j++) {
if (phNumbers.get(i).equalsIgnoreCase(pinNums.get(j))) {
Log.e("mye", "phone number and pin number match on this index" + i + "for phnumber and index " + j + "for pin number");
}
}
}
ArrayList phNumbers=new ArrayList();
添加(“aaa”);
PHN编号。添加(“bbb”);
PHN编号。添加(“ccc”);
PHD编号。添加(“ddd”);
ArrayList pinNums=新的ArrayList();
羽片。添加(“ddd”);
羽片。添加(“bbb”);
添加(“ccc”);
羽片。添加(“aaa”);
对于(int i=0;i
若你们想在某一点后中断,那个么你们需要中断循环。
可以吗?或者您还需要什么?请提供一个完整的示例。什么是
phNumbers
和pinums
?什么是详细信息
?你确定你想做的是phNumbers.indexOf(i)
?你调试代码了吗?若否,原因为何?如果是,哪里出错了?您的代码和问题不正确…请尝试elabotate@MaxVollmer我在我的问题中解释说,phNumbers和pinNums是ArrayList。“详细信息”只是一个字符串,我将其拆分以获取值。据我所知,indexOf()方法返回值所在的索引。ArrayList
是原始类型。您是否使用原始ArrayList
s?如果是,不要。如果没有,你还没有回答我的问题。再次:请用a更新您的问题。我需要确保这些值位于ArrayList中的相同索引。例如:ArrayList1第一个值=Tim,ArrayList2第一个值为45。contains方法只会告诉我这些值是否在ArrayList中,而不会告诉我它们是否相对