欢迎您访问365答案网,请分享给你的朋友!
生活常识 学习资料

Java集合03List

时间:2023-06-08
3.1 List

List 接口基本介绍
List 接口 是 Collection 接口 的 子接口 List.java List 集合类 中 元素 是 有序的,且 可重复的。List 集合中 的 每隔 元素 都有 对应的 索引。List 容器 中的 元素 都对应一个 整数型的 序号 记载 其 在 容器 中 的 位置,可以 根据序号 存取 容器 中的元素。JDK API 中 List 接口的 实现类 常用的 有 ArrayList、linkedList、Vector。

底层 其实都是 对 数组 进行 个 加工。所以 你会发现 这 tm 特性 和 数组 太像了。。

先 简单的 做个 排序吧:

import java.util.ArrayList;import java.util.Collections;import java.util.Comparator;import java.util.List;public class List_ { public static void main(String[] args) { List list = new ArrayList(); list.add("jack"); list.add("tom"); list.add("jim"); list.add("bai"); System.out.println("list=" + list); System.out.println(list.get(3)); list.add(1,"被插入的数据"); System.out.println("list=" + list); // list.addAll(); 加入一个 序列进去 list.remove("tom"); System.out.println("list=" + list); System.out.println(list.isEmpty()); List list1 = new ArrayList(); list1.add(new Book("小明",10,"明")); list1.add(new Book("小红",8,"红")); list1.add(new Book("小亮",2,"亮")); System.out.println("----------------------排序前----------------------"); for(Object o : list1){ System.out.println(((Book)o).name + "||" + ((Book)o).price + "||" +((Book)o).autor); } for(int i = 0; i < list1.size() - 1; i++){ for(int j = 0; j < list1.size() - 1 - i; j++){ Book pre = (Book)list1.get(j); Book end = (Book)list1.get(j + 1); if(pre.price > end.price){ list1.set(j,end); list1.set(j + 1,pre); } } } System.out.println("----------------------排序后----------------------"); for(Object o : list1){ System.out.println(((Book)o).name + "||" + ((Book)o).price + "||" +((Book)o).autor); } Collections.sort(list1, new Comparator() { @Override public int compare(Book o1, Book o2) { return o2.price - o1.price; } }); System.out.println("------------------------------------"); for(Object o : list1){ System.out.println(((Book)o).name + "||" + ((Book)o).price + "||" +((Book)o).autor); } }}class Book{ public String name; public int price; public String autor; public Book(){ } public String getName() { return name; } public void setName(String name) { this.name = name; } public int getPrice() { return price; } public void setPrice(int price) { this.price = price; } public String getAutor() { return autor; } public void setAutor(String autor) { this.autor = autor; } public Book(String name, int price, String autor) { this.name = name; this.price = price; this.autor = autor; }}

排序 的话 也就 分 两种,一个是 用 Collections.sort() 自己 写一个 回调。

要不然就是 自己 写一个 排序 API,进行 个 排序。

然后 再一个 就是 它的 方法了,我觉得吧,毕竟 这只是 给我自己 做记录用的。我学过 C++ 了都。真的 很简单,对我来说。


就没必要 记录那么多的 无用信息了。

Copyright © 2016-2020 www.365daan.com All Rights Reserved. 365答案网 版权所有 备案号:

部分内容来自互联网,版权归原作者所有,如有冒犯请联系我们,我们将在三个工作时内妥善处理。