logo

Java で 2 つの ArrayList を比較する方法

Java で 2 つの ArrayList を比較するには、次の方法があります。

  • ジャワ 等しい() 方法
  • ジャワ すべて削除する() 方法
  • ジャワ すべて保持() 方法
  • ジャワ ArrayList.contains() 方法
  • ジャワ contentEquals() 方法
  • ジャワ ストリーム インターフェース

Javaのequals()メソッド

ジャワ 等しい() の方法 リスト インターフェイスは、指定されたオブジェクトとリストが等しいかどうかを比較します。をオーバーライドします。 等しい() の方法 物体 クラス。

構文

Pythonの剰余演算子
 boolean equals(Object o) 

このメソッドは、 物体 リストと等しいかどうかを比較します。戻ります 真実 指定されたオブジェクトがリストと等しい場合、それ以外の場合は戻り値を返します。 間違い

次の例では、2 つの ArrayList を作成します。 最初のリスト そして 秒リスト 。を使用して両方のリストを比較します 等しい() メソッドの場合、true を返します。に別の要素を追加しました。 秒リスト firstList と SecondList の間に違いを作成します。ここで、比較を実行すると、次の結果が返されます。 間違い

 import java.util.*; public class ComapreArraylistExample1 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(); //adds elements to the arraylist firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Mango'); System.out.println(firstList); //second array list List secondList=new ArrayList(); //adds elements to the arraylist secondList.add('Apple'); secondList.add('Pears'); secondList.add('Guava'); secondList.add('Mango'); System.out.println(secondList); //comparing both lists boolean boolval = firstList.equals(secondList); //returns true because lists are equal System.out.println(boolval); //adding another element in the second list secondList.add('Papaya'); //again comparing both lists boolean bool = firstList.equals(secondList); //returns false because lists are not equal System.out.println(bool); } } 

出力

 [Apple, Pears, Guava, Mango] [Apple, Pears, Guava, Mango] true false 

JavaのremoveAll()メソッド(欠落している要素の検索)

ジャワ すべて削除する() の方法 配列リスト class は、指定されたコレクションに含まれるすべての要素をリストから削除するために使用されます。をオーバーライドします。 すべて削除する() の方法 抽象コレクション クラス。

構文

 public boolean removeAll(Collection c) 

このメソッドは受け入れます コレクション このリストから削除される要素を含むパラメータとして。戻ります 真実 呼び出しの結果としてこのリストが変更されたかどうか。

次の例では、2 つの ArrayList を作成しました。 最初のリスト そして 秒リスト 。の すべて削除する() このメソッドは、同じ要素が SecondList にも存在するため、firstList のすべての要素を削除します。 パパイヤ 。それで、 パパイヤ の欠落要素です 最初のリスト 。したがって、それは返されます パパイヤ 。メソッドは、 空のリスト [] 両方のリストに同じ要素がある場合。

 import java.util.*; public class ComapreArraylistExample2 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(); //adds elements to the array list firstList.add('Apple'); firstList.add('Pears'); firstList.add('Guava'); firstList.add('Peach'); //second array list ArrayList secondList=new ArrayList(); //adds elements to the array list secondList.add('Apple'); secondList.add('Pears'); secondList.add('Papaya'); secondList.add('Peach'); //removes all elements from the first list //returns empty list if all the elements of first list match with elements of second list secondList.removeAll(firstList); //prints the element of second list which does not match with the element of the first list System.out.println(secondList); } } 

出力

 [Papaya] 

firstList から存在しない要素、つまり SecondList を返す、removeAll() メソッドの別の例を見てみましょう。

 import java.util.*; public class ComapreArraylistExample3 { public static void main(String args[]) { //first array list ArrayList firstList=new ArrayList(Arrays.asList(12, 4, 67, 90, 34)); System.out.println('First array list: '); System.out.println(firstList); //second array list List secondList=new ArrayList(Arrays.asList(12, 4, 67, 0, 34)); System.out.println('Second array list: '); System.out.println(secondList); //returns the common elements in both list firstList.removeAll(secondList); System.out.println('Un-common element of the first list: '); System.out.println(firstList); } } 

出力

 First array list: [12, 4, 67, 90, 34] Second array list: [12, 4, 67, 0, 34] Un-common element of the first list: [90] 

Java restartAll() メソッド (両方のリストの共通要素を返します)

ジャワ すべて保持() の方法 配列リスト クラスは、他のリストにも含まれるリストの要素のみを保持します。をオーバーライドします。 すべて保持() の方法 抽象コレクション クラス。

junit テストケース

構文

 public boolean retainAll(Collection c) 

このメソッドは、 コレクション リストに保持する要素を含むパラメータとして使用します。戻ります 真実 呼び出しの結果としてこのリストが変更されたかどうか。

この例では、2 つの ArrayList を作成しました。 最初のリスト そして 秒リスト を使用して asList() の方法 配列 クラス。 asList() メソッドは、指定された配列のリスト ビューを返します。

 import java.util.*; public class ComapreArraylistExample4 { public static void main(String args[]) { //first arraylist ArrayList firstList=new ArrayList(Arrays.asList('M', 'W', 'J', 'K', 'T')); System.out.println('First arraylist: '); System.out.println(firstList); //second arraylist List secondList=new ArrayList(Arrays.asList('M', 'W', 'E', 'K', 'T')); System.out.println('Second arraylist: '); System.out.println(secondList); //returns the common elements in both list secondList.retainAll(firstList); System.out.println('Common elements in both list: '); System.out.println(secondList); } } 

出力

 First arraylist: [M, W, J, K, T] Second arraylist: [M, W, E, K, T] Common elements in both list: [M, W, K, T] 

Java ArrayList.contains() メソッド

ジャワ ArrayList.contains() メソッドは、異なる ArrayList の 2 つの要素を比較するために使用されます。ジャワ ArrayList.contains() メソッドは を含む() の方法 抽象コレクション クラス。

構文

 public boolean contains(Object o) 

このメソッドは、リスト内の存在を確認する必要がある要素を解析します。戻ります 真実 要素が一致した場合、そうでない場合は戻ります 間違い

この例では、2 つの ArrayList を作成しました。 最初のリスト そして 秒リスト タイプ。これらの ArrayList を次のように比較しました。 を含む() 方法。 firstList の要素が SecondList の要素と一致する場合、戻り値が返されます。 はい そしてこの値をに保存します 3番目のリスト 。同様に、要素が一致しない場合は、戻り値が返されます。 いいえ

 import java.util.ArrayList; import java.util.Arrays; public class ComapreArraylistExample5 { public static void main(String [] args) { //first arraylist ArrayList firstList= new ArrayList(Arrays.asList('Good', 'Morning', 'Students')); //second arraylist ArrayList secondList= new ArrayList(Arrays.asList('Good', 'Night', 'frineds')); //storing the comparison output in thirdList ArrayList thirdList= new ArrayList(); //iterator using for-each loop for(String tempList : firstList) //tempList is a variable thirdList.add(secondList.contains(tempList) ? 'Yes' : 'No'); System.out.println(thirdList); } } 

出力

 [Yes, No, No] 

Java contentEquals() メソッド

ジャワ contentEquals() メソッドは、 とともに 文字列バッファ そして、を返します ブール値 価値。に属します クラス。

構文

 public boolean contentEquals(StringBuffer sb) 

このメソッドは、String と比較するパラメータとして StringBuffer を受け入れます。戻ります 真実 String が指定された StringBuffer と同じ文字シーケンスを表す場合、そうでない場合は戻り値を返します。 間違い

この例では、2 つの ArrayList を作成しました。 最初のリスト そして 秒リスト タイプ。静的メソッドを作成しました 比較リスト() 2 つの ArrayList を解析します ls1 そして ls2 引数として、を返します ブール値 価値。このメソッドはリストを次のように変換します。 。の contentEquals() メソッドは、String を指定された StringBuffer と比較します。

両方のリスト間の違いを作成するために、 SecondList に別の要素を追加し、再度 比較リスト() メソッド、戻り値 間違い

 import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class ComapreArraylistExample6 { //defining method public static boolean compareList(ArrayList ls1, ArrayList ls2) { //converts List into String and checks string are equal or not return ls1.toString().contentEquals(ls2.toString())?true:false; } public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); ArrayList secondList = new ArrayList(Arrays.asList('Java', 'Python', 'Ruby', 'Go')); System.out.println('When Lists are same: '+compareList(firstList, secondList)); //adding another element to the secondList secondList.add('C++'); //output after adding different element System.out.println('When Lists are not same: '+compareList(firstList, secondList)); } } 

出力

 When Lists are same: true When Lists are not same: false 

Javaストリームインターフェース

ジャワ ストリーム インターフェースです。に属します java.util パッケージ。それは、 フィルター() 指定された要素に基づいてストリーム要素をフィルタリングするメソッド。それは 中級 プロセス。

構文

 Stream filter(Predicate predicate) 

このメソッドは受け入れます 述語 (関数インターフェイス) を引数として受け取り、結果の要素の新しいストリームを返します。

autocad 2019 英語版をダウンロードします。

collect() メソッド

次の例では別の方法が使用されています。 集める() の方法 ストリーム インターフェース。

コレクタを使用して、このストリームの要素に対して可変リダクション操作を実行します。 Collector は、collect(Supplier、BiConsumer、BiConsumer) への引数として使用される関数をカプセル化します。それにより、次のことが可能になります 再利用する 収集戦略と収集オペレーションの構成。それは ターミナル 手術。

構文

 R collect(Collector collector) 

Collectors.toList() メソッド

toList() の静的メソッドです コレクター クラス。に属します java.util.Stream.Collectors クラス。

構文

 public static Collector<t, ?, list> toList() </t,>

どこ T 要素の種類です。を返します コレクタ これは、すべての入力要素を、遭遇した (順序付けられていない) 順序でリストに収集します。

次の例では、2 つの ArrayList を作成しました。 最初のリスト そして 秒リスト 文字列型の。の フィルター() メソッドは、両方のリストに存在する共通要素のリストを返します。

 import java.util.*; public class CompareArrayListExample7 { public static void main(String[] args) { ArrayList firstList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;)); System.out.println(&apos;First List: &apos;+firstList); ArrayList secondList = new ArrayList(Arrays.asList(&apos;Java&apos;, &apos;Python&apos;, &apos;Ruby&apos;, &apos;Go&apos;, &apos;Perl&apos;)); System.out.println(&apos;Second List: &apos;+secondList); // Finds common elements System.out.print(&apos;Common elements: &apos; +firstList.stream().filter(secondList::contains).collect(Collectors.toList())); } } 

出力

 First List: [Java, Python, Ruby, Go] Second List: [Java, Python, Ruby, Go, Perl] Common elements: [Java, Python, Ruby, Go]