搜索动物类的动物方法

时间:2018-03-23 06:00:12

标签: java oop

我有一个方法,我不太确定它的作用。我有一个Animal类和一个动物ArrayList。我正在努力理解它,所以我最终可以在将来使用类似的东西。有人可以解释它究竟是做什么的吗?

这是我的代码:

public Animal search(String name) {

    Animal result = null;
    for (Animal a : animals) {
        if (name.equals(a.getName())) {
            result = a;
        }
    }
    return result;
}

5 个答案:

答案 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.

}