‫Kom terug en deze lezing, we zullen onze eigen afgevaardigden maken om een lijst met mensen te filteren, en dit zal
‫ons een dieper begrip geven van hoe afgevaardigden onder de motorkap werken.
‫Laten we dus eens kijken naar de volgende klasse die we hier hebben.
‫Het is dus een heel eenvoudige klassepersoon met zowel een naameigenschap als een leeftijdseigenschap.
‫Slechts twee woningen hier.
‫Dus we willen onze eigen afgevaardigden maken om mensen te filteren op leeftijd, onze filterafgevaardigden zullen een persoon als
‫parameter nemen en een bool teruggeven als aan de voorwaarde met betrekking tot de leeftijd is voldaan.
‫Wat is de toestand precies?
‫Het maakt ons niet uit, aangezien de code kan worden gebruikt om bijvoorbeeld een lijst op een webpagina te
‫filteren, en de filterfunctie snel kan veranderen en.
‫Dat is precies het mooie van afgevaardigden.
‫Wat een luxe.
‫Oke.
‫Dus laten we ons afgevaardigdentype definiëren.
‫En daarom ga ik gewoon doorgaan en zeggen dat dit een afgevaardigde van het type boolean zal zijn.
‫Ik ga het filterafgevaardigde noemen en er is een persoon voor nodig.
‫Dus een persoonsobject genaamd Pete.
‫Laten we nu doorgaan en gewoon een kleine lijst maken van mensen of persoonsobjecten, om zo te zeggen,
‫hier hebben we vierpersoonsobjecten.
‫Een, twee, drie en vier.
‫En dan voegen we ze allemaal toe aan een lijst.
‫Ze hebben hier dus verschillende namen en verschillende leeftijden.
‫Dus nu willen we die mensen daadwerkelijk filteren op basis van hun leeftijd, bijvoorbeeld alleen de volwassenen weergeven
‫die 18 jaar of ouder zijn of de minderjarigen alleen de leeftijd onder de 18 jaar.
‫Aangezien u verschillende filters wilt toepassen, gaan we een methode maken met de naam display people.
‫Deze methode neemt de lijst met mensen en een filter als gemachtigde en filtert vervolgens de lijst met mensen op
‫basis van dat filter.
‫Dus we willen er ook een string in gooien genaamd titel om de zaken er in de raad meer georganiseerd uit te laten zien.
‫Dus laat me eerst de header van mijn methode hier instellen.
‫Dus we hebben hier de methode mensen weergeven en hebben een tekenreeks, de lijst met mensen en de filterafgevaardigde nodig
‫die ik filter zal noemen.
‫Nu, wat is het dat ik hier wil doen?
‫Nou, allereerst ga ik gewoon de titel schrijven.
‫En dan ga ik alle mensen doornemen die hier op mijn persoonlijke lijst staan.
‫En ik ga kijken of het filter werkt bij de persoon die we zijn gepasseerd.
‫Dus hier gaan we gewoon de naam van de persoon zeggen en ook hoe oud ze zijn.
‫En nu kunnen we doorgaan en een paar methoden definiëren die we als filters zullen gebruiken.
‫OK, dus een zal voor de mijnwerkers zijn.
‫Dus hier is mijnwerker.
‫Dus we nemen de persoon op en vergelijken zijn leeftijd met 18.
‫En als het lager is, weten we dat we moeten terugkeren.
‫Waar.
‫Wat betekent dat de persoon een mijnwerker is, anders zullen we false retourneren.
‫Oké, dus dat wordt het enige filter.
‫Laten we dan nog een filter maken voor volwassenen zoals zeep en nu nog een filter voor senioren, laten
‫we zeggen mensen boven de 65 jaar.
‫Zoals, dus nu de hoofdmethode, laten we de methode voor het weergeven van mensen een paar keer aanroepen, degene die we zojuist
‫hebben gemaakt, deze hier.
‫Laten we dus verder gaan met onze hoofdmethode.
‫En hier ga ik mensen tonen en hier ga ik gewoon de titel doorgeven.
‫Ik ga gewoon zeggen kinderen, ik geef bijvoorbeeld zowel de mensenlijst als mijn filter door.
‫Dus hier is mijn kleine filter en ik noem het zo klein.
‫En laten we het nu eens bekijken.
‫Laten we dit uitvoeren en kijken of het onze kinderen zal tonen en alleen deze plek, Walter, die 12 jaar oud is.
‫OK, dus dat filter werkte.
‫Zie je, we hebben een methode doorgegeven, we hoefden geen parameters aan deze methode door te geven, omdat we het in
‫de positie van een gedelegeerde hebben doorgegeven, zodat hij gewoon de gedelegeerde kon filteren.
‫Laat me een beetje naar buiten scrollen, zodat je kunt zien dat het een beetje beter is.
‫Dus hier moeten we afgevaardigden doorgeven en filteren, wat betekent dat we een methode kunnen invoeren die gewoon de
‫beschrijving van de afgevaardigden van het filter volgt, wat betekent dat het alleen een boolean hoeft door te geven en dat het één parameter
‫van het type persoon moet hebben.
‫En dat is precies wat onze methodes, filters zoals ik ze hier noemde, doen.
‫Ze retourneren een boolean en ze hebben persoon P nodig, dus als klein de structuur niet zou volgen, zou dit niet
‫werken.
‫Dus als ik hier vanaf zou komen en hier true zou terugkeren, bijvoorbeeld, dan zou dit niet werken.
‫Zie je hier, dit is Mörner die methodegroep kan converteren naar een programma dat afgevaardigden filtert, zodat het
‫niet de instructies van onze afgevaardigden volgt.
‫Oké, laten we nu hetzelfde doen met ons andere type filters.
‫Dus eerst met volwassenen en dan met senioren, dus laten we het eens bekijken.
‫We zien kinderen, Walter, volwassenen, Aiden en Anatoliy, en dan zitten alleen senioren en hij is negenenzestig jaar oud.
‫Dus dat was het voor een kleine introductie voor afgevaardigden.
‫Maar je merkt misschien een vervelend patroon op dat we hier hebben en dat gaan we elimineren
‫in de volgende lezing, het anonieme methodepatroon.
‫Dus Segou daar.