Here you can find the source of equals(List list1, List list2)
public static boolean equals(List list1, List list2)
//package com.java2s; /**/*w w w .j ava 2 s . com*/ * Copyright 2010 JBoss Inc * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import java.util.List; public class Main { public static boolean equals(List list1, List list2) { if (list1 == null && list2 == null) { // both are null return true; } if (list1 == null || list2 == null) { // we know both aren't null, so if one is null them obviously false return false; } if (list1.size() != list2.size()) { return false; } if (list1.isEmpty() && list2.isEmpty()) { return true; } for (Object item1 : list1) { boolean exists = false; for (Object item2 : list2) { if (item1.equals(item2)) { exists = true; break; } } if (!exists) { return false; } } return true; } }