[JAVA] Jugement d'inclusion des éléments de la collection

Table des matières ⇒ Java Algorithm Library-Artery-Sample

Q01_15.java


package jp.avaj.lib.algo;

import java.util.Collection;
import java.util.List;

import jp.avaj.lib.test.ArTest;
import jp.avaj.lib.test.L;

/**
Jugement d'inclusion d'éléments de collection à l'aide d'ArValidator

-Juger l'élément avec ArValidator et juger si la collection remplit les conditions suivantes.Chacun a son propre ArValidator
・ Il n'y a qu'un seul élément qui remplit les conditions.
    ⇒ ArValidatorCollectionContainsOnlyOne
・ Il y a un ou plusieurs éléments qui remplissent les conditions
    ⇒ ArValidatorCollectionContains
・ Tous les éléments satisfont aux conditions.
    ⇒ ArValidatorCollectionContainsAll
・ Il n'y a aucun élément qui satisfait aux conditions.
    ⇒ ArValidatorCollectionContainsNone

・ Dans cet exemple, List<String>Le début de l'élément est"a"Et à la fin"z"Vérifier si.

 */
public class Q01_15 {
  public static void main(String[] args) {
    //Lancer un cas de test, inutile si vous n'avez pas besoin d'agrégation
    ArTest.startTestCase("Q01_15");

    //données de test
    List<String> listZero = ArList.construct("abc0,abc1,abc2,abc3");
    List<String> listOne = ArList.construct("abc0,abc1,abc2,abc3z");
    List<String> listTwo = ArList.construct("abc0,abc1z,abc2,abc3z");
    List<String> listAll = ArList.construct("abc0z,abc1z,abc2z,abc3z");

    //ArValidator pour les éléments individuels
    ArValidator<String> itemValidator = new ArValidator<String>() {
      @Override
      public boolean check(String value) {
        return value.startsWith("a") && value.endsWith("z");
      }
    };

    boolean result;
    //ArValidator pour vérifier la liste entière
    ArValidator<Collection<String>> validator;

    L.p("Il n'y a qu'un seul élément qui satisfait la condition");
    {
      validator = new ArValidatorCollectionContainsOnlyOne<String>(itemValidator);
      //
      result = validator.check(listZero);
      ArTest.isFalse("listZero","result",result);
      //
      result = validator.check(listOne);
      ArTest.isTrue("listOne","result",result);
      //
      result = validator.check(listTwo);
      ArTest.isFalse("listTwo","result",result);
      //
      result = validator.check(listAll);
      ArTest.isFalse("listAll","result",result);
    }
    L.p("Il y a un ou plusieurs éléments qui remplissent les conditions");
    {
      validator = new ArValidatorCollectionContains<String>(itemValidator);
      //
      result = validator.check(listZero);
      ArTest.isFalse("listZero","result",result);
      //
      result = validator.check(listOne);
      ArTest.isTrue("listOne","result",result);
      //
      result = validator.check(listTwo);
      ArTest.isTrue("listTwo","result",result);
      //
      result = validator.check(listAll);
      ArTest.isTrue("listAll","result",result);
    }
    L.p("Tous les éléments remplissent les conditions");
    {
      validator = new ArValidatorCollectionContainsAll<String>(itemValidator);
      //
      result = validator.check(listZero);
      ArTest.isFalse("listZero","result",result);
      //
      result = validator.check(listOne);
      ArTest.isFalse("listOne","result",result);
      //
      result = validator.check(listTwo);
      ArTest.isFalse("listTwo","result",result);
      //
      result = validator.check(listAll);
      ArTest.isTrue("listAll","result",result);
    }
    L.p("Il n'y a aucun élément qui satisfait la condition");
    {
      validator = new ArValidatorCollectionContainsNone<String>(itemValidator);
      //
      result = validator.check(listZero);
      ArTest.isTrue("listZero","result",result);
      //
      result = validator.check(listOne);
      ArTest.isFalse("listOne","result",result);
      //
      result = validator.check(listTwo);
      ArTest.isFalse("listTwo","result",result);
      //
      result = validator.check(listAll);
      ArTest.isFalse("listAll","result",result);
    }
    //
    //Terminez le cas de test, inutile si vous n'avez pas besoin d'agrégation
    ArTest.endTestCase();
  }
}

Le résultat est le suivant

result.txt


**** Q01_15 start ****
Il n'y a qu'un seul élément qui satisfait la condition
OK listZero:result=false
OK listOne:result=true
OK listTwo:result=false
OK listAll:result=false
Il y a un ou plusieurs éléments qui remplissent les conditions
OK listZero:result=false
OK listOne:result=true
OK listTwo:result=true
OK listAll:result=true
Tous les éléments remplissent les conditions
OK listZero:result=false
OK listOne:result=false
OK listTwo:result=false
OK listAll:result=true
Il n'y a aucun élément qui satisfait la condition
OK listZero:result=true
OK listOne:result=false
OK listTwo:result=false
OK listAll:result=false
**** Q01_15 summary ****
test count = 16
success    = 16

Recommended Posts

Jugement d'inclusion des éléments de la collection
Collection expirée de java
Jugement du calendrier
Jugement de JSONArray et JSONObject
[Java] Comparateur de la classe Collection
Collection de la bibliothèque Android de "Mercariatte"
[Java] Supprimer les éléments de la liste
Premier jugement de lancement de l'application Android
[Apache POI] Jugement des cellules inutiles