Интерфейс предиката в Java bDarija

Predicate fJava kaykon fjava.util.Function hia wahd l’interface fonctionnelle bi ma3na ahana kathtawi cela méthode whda.
W katmtel wahd la methode smytha test() o li katakhod wahd l’argument.
W flkeher katrejee lik valeur boolean, y3ni katrejee lik ssahih wlh ghalat.
W ka mola7ada ra f aghlabiat l ahyan ghatlqawh mea lambda.

La methode test() lghaya mnha howa theqeq lik mn l’argument li kataked flparametre wach kayheqeq chorot wla la.
Hadchi elach natija katkon ya imma ssahih awla ghalat.

syntaxe:

boolean test(T t)

Войти в полноэкранный режим Выйти из полноэкранного режима
  • T тип аргумента
  • t l’argument
  • булев тип де ретурна, true ila l’argument kayheqeq dik lpredicat awla false

пример программы:

public class PredicateTest {
    public static void main(String[] args) {
    Predicate<Integer> p = number -> (number % 2 == 0);                  System.out.println(p.test(8));//vrai  
    System.out.println(p.test(5));//faux  
}
Вход в полноэкранный режим Выход из полноэкранного режима

Sti3mal dialo flmain kalkon bhat tariqa:

public class PredicateTest {
    public static void main(String[] args) {
        Predicate<Integer> sup_a_deux= nombre -> (nombre>2);          System.out.println(sup_a_deux.test(8));
        System.out.println(sup_a_deux.test(5));    
}}
Войти в полноэкранный режим Выход из полноэкранного режима

Exemple sans lambda:

Edna classe Personne

 

  public static class Personne{      
      private int Age;
      public Personne(int Age) {this.Age=Age;}
      public int getAge() {return Age;}

}
Войти в полноэкранный режим Выход из полноэкранного режима

Lgharad dialna mn Предикат howa ychof wach l’age dial la personne kber mn 25 ans

public static class Age_Sup_A_25 implements Predicate{
     @Override      
     public boolean test(Personne personne) {
         return personne.getAge()>25; 
//fhad return kandiro test ela l'age dial Personne
//kangolo l méthode retourne true si l'Age est superieur a 25 sinon false
      }
   }
Войти в полноэкранный режим Выйти из полноэкранного режима

была функция filtrer, катаход flparametres la liste des personnes o lpredicate, mn b3d kat-retourne liste jdida etinaha smia nvl_liste li kathqeq dak chert dial predicate o li kna dwezna flparametre

Fhad lmital la boucle foreach : for (Personne p : list_personne) katsme7 lina ndiro test li kayn f predicate ela kolla personne mn liste

o chert li f predicate howa wach l’age dial la personne kber mn 25ans
Fach predicate.test(p) katchof bli test(p) rej3at true katzid la personne p fla liste jdida nvl_liste nvl_liste.add(p)

public static List<Apple> filter(List<Personne> list_personne, Predicate<Personne> predicate){
       List<Apple> nvl_liste= new ArrayList();
       for (Personne p : list_personne) {
            if(predicate.test(p)) 
               nvl_liste.add(p);         
       }
         return nvl_liste;
 }
Вход в полноэкранный режим Выход из полноэкранного режима

Оцените статью
Procodings.ru
Добавить комментарий