javalist比较list
❶ java foreach循环遍历List 如何比较List里面值的大小 里面值是int
import java.util.ArrayList;
import java.util.List;
public class ForEach {
public static void main(String[] args) {
List<含卜Integer>谈闭穗 list = new ArrayList<Integer>();
list.add(13);
list.add(5);
list.add(127);
Integer min = list.get(0);
for(Integer item: list){
if(item.intValue() < min){
min = item;
}
}
System.out.println("Min is: "态困 + min.intValue());
}
}
❷ java 怎么把list里面的数据取出来依次比较
importjava.util.ArrayList;
importjava.util.Arrays;
importjava.util.Calendar;
importjava.util.Collections;
importjava.util.Date;
publicclassCompareDateDemo{
privatestaticArrayList<Date>list=newArrayList<Date>();
//静态初始化集合
static{
//插入测试数据
list.add(newDate());
Calendarc1=Calendar.getInstance();
c1.set(2010,11,22);
list.add(c1.getTime());
c1.set(2011,11,22);
list.add(c1.getTime());
c1.set(2012,11,22);
list.add(c1.getTime());
System.out.println(list.size());
}
publicstaticvoidmain(String[]args){
compare1();
//compare2();
//compare3();
}
//利用冒泡法进行排序
staticvoidcompare1(){
//输出排序前结果
System.out.println("排序前:");
for(inti=0;i<list.size();i++){
System.out.println(list.get(i));
}
//排序(冒泡算法)将list进行升序排列
for(inti=0;i<list.size();i++){
for(intj=0;j<i;j++){
if(list.get(i).compareTo(list.get(j))<0){
DatetempDate=list.get(i);
list.set(i,list.get(j));
list.set(j,tempDate);
锋颂陆}
}
}
//输出排序后结果
System.out.println("排序后:");
for(inti=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
//利用Arrays工具类进行排序
staticvoidcompare2(){
Object[]obj=list.toArray();
//输出排序前结果
System.out.println("排序前:");
for(inti=0;i<obj.length;i++){
System.out.println(obj[i]);
}
//排序
Arrays.sort(obj);
//输出排序后结果
System.out.println("排序后:");
for(inti=0;i<obj.length;i++){
System.out.println(obj[i]);
}
}
//利用Collections工具类进行排序
樱谨staticvoidcompare3(){
//输出排序前结银顷果
System.out.println("排序前:");
for(inti=0;i<list.size();i++){
System.out.println(list.get(i));
}
//排序
Collections.sort(list);
//输出排序后结果
System.out.println("排序后:");
for(inti=0;i<list.size();i++){
System.out.println(list.get(i));
}
}
}
❸ java 判断两个list中的对象是否完全一致
使用java判断两个list中的对象是否完全一致的代码如下:
publicclassTest{publicstaticvoidmain(String[]args)
{List<Integer>a=Arrays.asList(1,2,3,4)
List<Integer>b=Arrays.asList(4,3,2,1)System.out.println(compare(a,b))
publicstatic<TextendsComparable<T>>boolean compare(List<T>a,List<T>b){if(a.size()!=b.size())
returnfalseCollections.sort(a)Collections.sort(b)for(inti=0;i<a.size();i++) {if(!a.get(i).equals(b.get(i)))returnfalse;}returntrue;}}
❹ 两个list中比较其中一个list的对象的属性的值是否等于另一个list值。
使用java判断两个list中的对象是否完全一致的代码如下:
public class Test {public static void main(String[] args)
{List<Integer> a = Arrays.asList(1, 2, 3, 4)
List<Integer> b = Arrays.asList(4, 3, 2, 1)System.out.println(compare(a, b))
public static <T extends Comparable<T>> boolean compare(List<T> a, List<T> b) {if (a.size() != b.size())
return falseCollections.sort(a)Collections.sort(b)for (int i = 0; i < a.size(); i++) {if (!a.get(i).equals(b.get(i)))return false;}return true;}}
(4)javalist比较list扩展阅读:
在编程语言中List 是标准类库中的友并野一个类,可以简单视之为双向链表,以线性列的方式管理物件集合。list 的特色是在集合的任何位置增加或删除元素都很快,但是不支持随机存取。list 是类库提供的众多容器(container)之一,除此之外还有vector、set、map、…等等好喊。
list 以模板方式实现(即泛型),可以处理任意型别的变量,包括使用者自定义的资料型态例如:它可以是一个放置整数(int)型态的 list、也可以是放置字串(char 或 string)型蔽绝态的 list、或者放置使用者自定类别(user-defined class)的 list。
❺ java怎么比较两个list是否相同
判断两个list集合的元素个数是否相等。如果不相等则两个list集合也不相等,判断结束,如果相等则进入第二步判断
判断list1的元素是否全部在list2中。遍历list1,取出list1中的元素,依次去list2中比较是否list2也存在这个元素。如果有任何一个list1中的元素在list2中不存在,则两个list集合不相等,如果全部存在则两个list集合相等。
这里需要说明一点,因为败态第一步中已经判断list1和list2的元素个数是相等的,所以第二步中如果list1的元素全部在list2中,则可以证明list1与list2相等。不需要再遍历list2中的元素,去list1中判断是否存在。
以下是上诉过程的Java代码例子:public boolean equalList(List list1, List list2) {if (list1.size() != list2.size())
return false;for (Object object : list1) {if (!list2.contains(object))return false;}return true;}以上过程适用于所有编程语言。另外不同编程语言还提供了一些其他方法,所以对于不同编程语言还可以有其他写法。
比如Java中为list集合提供了containsAll方法。简春所以对于Java语言还可以这么写:
public boolean equalList(List list1, List list2) {if (list1.size() != list2.size())return false;if(list2.containsAll(list1))return true;return false;}还可以简写成这样:public boolean equalList(List list1, List list2) {return (list1.size() == list2.size()) && list1.containsAll(list2);}
❻ java 比较list里对象吗
比较list里对象实例代码如下:
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class CollectionJoin {
public static void main(String[] args) {
Student stu1 = new Student();
stu1.setId(1);
stu1.setName("jxq");
Student stu2 = new Student();
stu2.setId(2);
stu2.setName("love"消誉);
Student stu3 = new Student();
stu3.setId(1);
stu3.setName("java");
List<Student> list1 = new ArrayList<Student>();
list1.add(stu1);
List<拿册段Student> list2 = new ArrayList<Student>();
list2.add(stu2);
list2.add(stu3);
// 求交集,复杂度是O(m+n),m、n分别是两个list的元姿茄素个数
Map<Integer, Student> map = new HashMap<Integer, Student> ();
for(Student s: list1) {
map.put(s.getId(), s);
}
List<Student> intersection = new ArrayList<Student> ();
int tempId;
for(Student s: list2) {
tempId = s.getId();
if(map.containsKey(tempId))
intersection.add(map.get(tempId));
}
// 输出
Iterator<Student> iter = intersection.iterator();
while(iter.hasNext()) {
System.out.println(iter.next());
}
}
}
class Student {
private int id;
private String name;
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String toString() {
return "Student: " + id + " , Name: " + name;
}
}
❼ java里list里的数据,数组里的数据比较大小
如果是冲衡用java的排序实现没判渗:
int[] news = { 1, 3, 4, 5, 7, 8, 9, 11, 2, 6 };
Arrays.sort(news);
for (int i = 0; i < news.length; i++) {
System.out.println(news[i]);
}
如枯脊果是想自己实现一个排序,以下以冒泡为例:
int[] news = { 1, 3, 4, 5, 7, 8, 9, 11, 2, 6 };
for (int i = 0; i < news.length - 1; i++) {
for (int j = i; j < news.length; j++) {
if (news[i] > news[j]) {
int temp = news[j];
news[j] = news[i];
news[i] = temp;
}
}
}
for (int i = 0; i < news.length; i++) {
System.out.println(news[i]);
}
❽ java 对list里面的数据作比较
publicstaticvoidmain(String[]a){
//初始化LIST这里可以不管你可以手动创建集合添加元素
Integer[]lists=newInteger[]{2,3,8,4,5,5};
List<Integer>integerList=Arrays.asList(lists);
//从0个元素开始循环,每次取出来后和他后面一个做比较
for(inti=0;i<integerList.size();i++){
Integerone=integerList.get(i);
//当i取到最后一个渗誉的时候就结束循环否则会抛衡喊春出异常
if(i==integerList.size()-1){
咐耐break;
}
Integertwo=integerList.get(i+1);
System.out.println(one<two);
}
}
代码就是这样 ,,楼下的感觉好复杂。。
❾ JAVA如何比较出两个list中不同的元素
比较方法:
List<String> lista = new ArrayList<String>(list1);//构建list1的副本
lista.removeAll(list2);// 去除相同元素
List<String> listb = new ArrayList<String>(list2);//构建list2的副本
listb.removeAll(list1);// 去除相同元素
❿ java 比较两个list中是否有含有相同的数据
我这有种解法:
1、将携态高list1和list2进行合并,在合并过程中去重。
2、用Collections.sort()进行排序就行了。代闭哪码如下:
List<Integer> list = new ArrayList<Integer>辩尺();
for (Integer i : list2) {
if (list.indexOf(i) == -1) {
list.add(i);
}
}
for (Integer i : list1) {
if (list.indexOf(i) == -1) {
list.add(i);
}
}
Collections.sort(list);