目次 ⇒ Javaアルゴリズムライブラリ-Artery-サンプル
Q01_05.java
package jp.avaj.lib.algo;
import java.util.List;
import jp.avaj.lib.def.ArDuplicate;
import jp.avaj.lib.def.ArNull;
import jp.avaj.lib.def.ArSeq;
import jp.avaj.lib.test.L;
/**
* 二つのListを順番無視、null無視、重複無視で等値判定を行う
*
* ・ArListの以下のメソッドを使用する
* equals(List<T> list0,List<T> list1,ArSeq arSeq,ArNull arNull,ArDuplicate arDup)
*
* ・順番無視はArSeq.IGNOREを指定する.無視しない場合はArSeq.NOT_IGNOREを指定する.
* ・null無視はArNull.IGNOREを指定する.無視しない場合はArNull.NOT_IGNOREを指定する.
* ・重複無視はArDuplicate.IGNOREを指定する.無視しない場合はArDuplicate.NOT_IGNOREを指定する.
*
* ・本サンプルでは別々に無視するを指定したが、混在してもOK
*/
public class Q01_05 {
public static void main(String[] args) {
List<String> list0;
List<String> list1;
L.p("順番を無視して判定する");
{
list0 = ArList.construct("aaaa,bbbb,cccc");
list1 = ArList.construct("bbbb,cccc,aaaa");
// まずは無視しないで判定する
L.p(ArList.equals(list0,list1,ArSeq.NOT_IGNORE,ArNull.NOT_IGNORE,ArDuplicate.NOT_IGNORE)+"");
// 無視して判定する.
L.p(ArList.equals(list0,list1,ArSeq.IGNORE,ArNull.NOT_IGNORE,ArDuplicate.NOT_IGNORE)+"");
}
L.p("nullを無視して判定する");
{
list0 = ArList.construct(new String[]{"aaaa",null,"bbbb","cccc"});
list1 = ArList.construct(new String[]{"aaaa","bbbb","cccc",null});
// まずは無視しないで判定する
L.p(ArList.equals(list0,list1,ArSeq.NOT_IGNORE,ArNull.NOT_IGNORE,ArDuplicate.NOT_IGNORE)+"");
// 無視して判定する.
L.p(ArList.equals(list0,list1,ArSeq.NOT_IGNORE,ArNull.IGNORE,ArDuplicate.NOT_IGNORE)+"");
}
L.p("重複を無視して判定する");
{
list0 = ArList.construct("aaaa,bbbb,cccc");
list1 = ArList.construct("aaaa,bbbb,cccc,bbbb");
// まずは無視しないで判定する
L.p(ArList.equals(list0,list1,ArSeq.NOT_IGNORE,ArNull.NOT_IGNORE,ArDuplicate.NOT_IGNORE)+"");
// 無視して判定する.
L.p(ArList.equals(list0,list1,ArSeq.NOT_IGNORE,ArNull.NOT_IGNORE,ArDuplicate.IGNORE)+"");
}
}
}
Q01_05.txt
順番を無視して判定する
false
true
nullを無視して判定する
false
true
重複を無視して判定する
false
true