我有一个方法,我不太确定它的作用。我有一个Animal类和一个动物ArrayList。我正在努力理解它,所以我最终可以在将来使用类似的东西。有人可以解释它究竟是做什么的吗?
这是我的代码:
public Animal search(String name) {
Animal result = null;
for (Animal a : animals) {
if (name.equals(a.getName())) {
result = a;
}
}
return result;
}
答案 0 :(得分:3)
逐行:
public Animal search(String name) { //Method definition, parameter named name
Animal result = null; //Variable declaration to hold the result
for (Animal a : animals) { //for each loop, looping on all the animals and the current animal is stored in variable named a
if (name.equals(a.getName())) { //check if current animal's name is equal to parameter's value
result = a; //Yes, store it in result variable
}
}
return result; //In the end return result, it could be null if no animal is found
}
答案 1 :(得分:0)
它看起来像一个函数,通过将animals
方法的值与传递给它的字符串参数Animal
进行比较来搜索类似getName()
的{{1}}实例。功能。
该函数查看name
中的所有元素以返回最后一个匹配项,即使可能已找到一个匹配项。
答案 2 :(得分:0)
这是一种搜索方法,可以搜索Animal的ArrayList中的任何动物。假如你传递'Dog',那么它会在arraylist中检查任何名为'Dog'的动物
此Animal对象将存储搜索结果。如果在arrayList中找到它将是Animal对象,否则它将为null。
Animal result = null;
这个for循环用于迭代动物arrayList
中存在的所有动物for (Animal a : animals) {
}
如果动物名称输入的名称与正在迭代的当前Animal的名称相同,这将检查每只动物。如果if
条件为真,则会将其存储在result
对象中。
if (name.equals(a.getName())) {
result = a;
}
答案 3 :(得分:0)
public Animal search(String name) { //search method with name parameter
Animal result = null;
for (Animal a : animals) { //for loop retrieve single Animal object(a) per loop while (animals.size) from list of animals
if (name.equals(a.getName())) { //checks if 'Name' from Animal object is equal to name from search method if true it saves to result
result = a;
}
}
return result; //return result
}
答案 4 :(得分:0)
公共动物搜索(字符串名称){
Animal result = null; //creating a result variable
for (Animal a : animals) {
//for each animal (lets call them a in every iteration) in animals list
if (name.equals(a.getName())) { //if 'name' equals to a's name
result = a; // variable we created is now equal to 'a'
}
}
return result; //and returning the result.
}