Java 选择列表的元素

当我必须创建一个列表并在其中选择某些内容时,我陷入了困境。


我有一个可执行文件


public class Executable{

    public static void main(String [] args){

        WeekEnd we = new WeekEnd();


        Personne pierre = new Personne("Pierrot");

        Personne anna = new Personne("anna");


        we.addPersonne(pierre);

        we.addPersonne(anna);


        System.out.println("test : "+we.findUsingEnhancedForLoop("anna"));


    }

}

我有我的班级 Personne


public class Personne{

    private String name;


    public Personne(String name){

    this.name=name;

    }


    public String getPersonne(){

    return this.name;

    }

}

还有我的班级周末,我尝试选择安娜这个名字


import java.util.List;

import java.util.ArrayList;


public class WeekEnd{

    private ArrayList<Personne> listePersonne;


    public WeekEnd(){

      this.listePersonne = new ArrayList<>();

    }


   public Personne findUsingEnhancedForLoop(

   String name, ArrayList<Personne> listePersonne) {


      for (Personne personne : listePersonne) {

         if (personne.getPersonne().equals(name)) {

              return personne;

         }

     }

     return null;

   }


   public void addPersonne(Personne personne){

      listePersonne.add(personne);

   }

 }


呼唤远方
浏览 205回答 2
2回答

蛊毒传说

该WeekEnd班已经有一个listePersonne成员。你不应该传递这样的参数,它只会隐藏这个成员:public Personne findUsingEnhancedForLoop(String name) {&nbsp; &nbsp; // Rest of the code, as you had it...请注意,顺便说一下,使用 Java 8 的流可以显着清理方法的实现:returnlistePersonne.stream().filter(p -> p.getPersonne().equals(name)).findFirst().orElse(null);
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java