在数组列表中搜索,难度很大
我在这里有一个方法,它的工作是取3个数组列表并返回一个值。在数组列表中搜索,难度很大
3 ARRRAY列出了用户
- 名这是我做,这些都是球员的名字
- 每个名字,我已经给了一个特定值的所有名称的数组列表。我用这个来交叉引用我的位置和我分配的名称的值
我知道第三个可能会令人困惑,理解,所以生病尝试把它分解一点。所以说某人输入了一个名字,我在我的球员名称中查找了这个名字,一旦我找到了这个位置,我就可以访问该位置的playerNumber。因为我把名字放在一个列表中,而数字放在另一个列表中。位置匹配名称和数字在这两个名单
我的问题是,我一直得到0,作为我的返回结果。我不知道为什么,请告知:<
** unrealated:**伙计们为什么我使用arraylist的原因是因为这是据我所知在java中。随着时间的推移,我将学习新的主题,即时只是尽我所能去使用我所需的技能来制作一个有趣的项目。很抱歉,如果它真的nooby,这是我现在可以做什么
public static int meth(List names, List searchingLis, List nameNumber){ int totalGive=0;
int totalRecieve=0;
int sizer=names.size()-1;
int ret=-1000;
int makeSureAllPlayerAdded=sizer;
int returningValue=0;
do{
for(int i=0;i<names.size();i++){
int currenSearchRanking=(int) nameNumber.get(i);
if(names.get(i).equals(searchingLis.get(i))){
int valueToLookUpInNames=i;
int AddingValue=(int) nameNumber.get(valueToLookUpInNames);
returningValue=returningValue+AddingValue;
System.out.println(returningValue+"ret vales");
makeSureAllPlayerAdded--;
}
}
return returningValue;
}while(makeSureAllPlayerAdded<=0);
}
回答:
我明白你的意思是说searchingLis
和nameNumber
有匹配的位置,有效地代表一行,并names
只是一个任意的列表中选择最佳由用户提供的不匹配名称。
那么你最致命的缺陷就是if(names.get(i).equals(searchingLis.get(i))){
。
其中,如果您的searchingLis
位于相同位置,则只会在names
之间看到匹配项。因此,如果searchingList
持有[“John”,“Mary”]和names
持有[“Mary”],则不会匹配,因为您只查看位置0中的searchingList
成员,而不是比较每个成员searchingList
名称。
以上是 在数组列表中搜索,难度很大 的全部内容, 来源链接: utcz.com/qa/259257.html