当前位置: 首页 > wzjs >正文

响应式外贸网站建设网站的优化与推广分析

响应式外贸网站建设,网站的优化与推广分析,影评网站怎么做,网站建设的基本概念Java.util.List 使用详解 java.util.List 是 Java 集合框架中最常用的接口之一,它表示一个有序的集合(也称为序列)。下面我将详细介绍 List 的使用方法,包括创建、操作和最佳实践。 一、List 的创建 1. 使用具体实现类创建 //…

Java.util.List 使用详解

java.util.List 是 Java 集合框架中最常用的接口之一,它表示一个有序的集合(也称为序列)。下面我将详细介绍 List 的使用方法,包括创建、操作和最佳实践。

一、List 的创建

1. 使用具体实现类创建

// ArrayList - 基于动态数组
List<String> arrayList = new ArrayList<>();// LinkedList - 基于链表
List<Integer> linkedList = new LinkedList<>();// Vector - 线程安全的动态数组(已过时,不推荐新代码使用)
List<Double> vector = new Vector<>();

2. 使用工具方法创建

// Arrays.asList - 固定大小的List(不能添加/删除)
List<String> fixedList = Arrays.asList("A", "B", "C");// List.of (Java 9+) - 不可变List
List<String> immutableList = List.of("A", "B", "C");// Collections.nCopies - 创建包含n个相同元素的List
List<String> repeated = Collections.nCopies(3, "Hello");

二、基本操作

1. 添加元素

List<String> fruits = new ArrayList<>();// 添加单个元素
fruits.add("Apple");
fruits.add("Banana");// 在指定位置插入
fruits.add(1, "Orange"); // ["Apple", "Orange", "Banana"]// 添加多个元素
fruits.addAll(Arrays.asList("Grape", "Mango"));

2. 访问元素

// 获取元素
String first = fruits.get(0); // "Apple"// 检查元素是否存在
boolean hasApple = fruits.contains("Apple"); // true// 查找元素位置
int index = fruits.indexOf("Banana"); // 2
int lastIndex = fruits.lastIndexOf("Apple"); // 0

3. 修改元素

// 修改指定位置元素
fruits.set(1, "Cherry"); // ["Apple", "Cherry", "Banana", "Grape", "Mango"]// 批量替换 (Java 8+)
fruits.replaceAll(String::toUpperCase); // ["APPLE", "CHERRY", "BANANA", "GRAPE", "MANGO"]

4. 删除元素

// 按索引删除
fruits.remove(0); // 移除 "APPLE"// 按值删除
fruits.remove("CHERRY"); // 返回true表示成功// 条件删除 (Java 8+)
fruits.removeIf(f -> f.startsWith("B")); // 删除所有B开头的元素// 清空List
fruits.clear();

三、遍历操作

1. 基本遍历方式

// 1. for循环
for (int i = 0; i < fruits.size(); i++) {System.out.println(fruits.get(i));
}// 2. 增强for循环
for (String fruit : fruits) {System.out.println(fruit);
}// 3. 迭代器
Iterator<String> it = fruits.iterator();
while (it.hasNext()) {System.out.println(it.next());
}// 4. ListIterator (可双向遍历)
ListIterator<String> lit = fruits.listIterator();
while (lit.hasNext()) {System.out.println(lit.next());
}

2. Java 8+ 流式遍历

// 简单遍历
fruits.forEach(System.out::println);// 使用Stream API
fruits.stream().filter(f -> f.length() > 5).map(String::toLowerCase).forEach(System.out::println);

四、常用工具方法

1. 排序

// 自然排序
Collections.sort(fruits); // 按字母顺序// 自定义排序
fruits.sort((a, b) -> b.compareTo(a)); // 降序// 对象排序
List<Person> people = new ArrayList<>();
people.sort(Comparator.comparing(Person::getAge).thenComparing(Person::getName));

2. 子列表操作

// 获取子列表视图(与原List共享数据)
List<String> subList = fruits.subList(1, 3);// 子列表修改会影响原List
subList.set(0, "Peach");

3. 数组转换

// List转数组
String[] array = fruits.toArray(new String[0]);// 数组转List (Java 9+)
List<String> fromArray = List.of(array);

五、最佳实践

1. 初始化容量

// 如果知道大概元素数量,指定初始容量提高性能
List<String> bigList = new ArrayList<>(1000);

2. 不可变List

// Java 9+ 创建不可变List
List<String> immutable = List.of("A", "B", "C");// Java 8及以前
List<String> immutable = Collections.unmodifiableList(new ArrayList<>(...));

3. 线程安全处理

// 同步包装
List<String> syncList = Collections.synchronizedList(new ArrayList<>());// 并发集合 (Java 5+)
List<String> safeList = new CopyOnWriteArrayList<>();

4. 性能考虑

  • ArrayList:随机访问快(O(1)),中间插入/删除慢(O(n))
  • LinkedList:插入/删除快(O(1)),随机访问慢(O(n))

六、Java 8+ 新特性应用

1. removeIf

// 删除所有空元素
list.removeIf(Objects::isNull);

2. replaceAll

// 所有元素转为大写
list.replaceAll(String::toUpperCase);

3. Stream API

// 复杂数据处理
List<String> result = list.stream().filter(s -> s.length() > 3).map(String::toLowerCase).distinct().collect(Collectors.toList());

List 是 Java 开发中最常用的集合类型,合理使用可以大大提高开发效率。选择适当的实现类(ArrayList/LinkedList)和遵循最佳实践,可以优化程序性能。

http://www.dtcms.com/wzjs/259854.html

相关文章:

  • 做短视频的网站收益qq群推广引流免费网站
  • seo岗位是什么意思seo赚钱方法大揭秘
  • dreamweaver做动态网站网络销售怎么干
  • 京东网站建设现状分析搜索推广出价多少合适
  • 公司网站忘了怎么做微博指数查询入口
  • 做装修网站郑州seo优化
  • wordpress 帮助插件seo快速排名
  • 网站建设的技术有哪些方面成都seo培
  • discuz怎么做网站网上国网app推广方案
  • 重庆网领网站建设公司网站备案流程
  • 凡客建站网长春百度seo公司
  • 昆明网站制作网页网络营销所学课程
  • 广州站在哪个区教师遭网课入侵直播录屏曝光广场舞
  • wordpress archive模板长沙网站seo分析
  • wordpress推介联盟百度seo查询系统
  • 网站被iframe站长工具的使用seo综合查询运营
  • 网站建设费用能否计入广告费sem竞价教程
  • 苏州做网站0512jinyan免费b站网站推广
  • 简便网站建设大学生网页制作成品模板
  • 义乌商城集团的网站建设网络营销章节测试答案
  • 网站源码是用什么做的温州网站建设开发
  • 湖北网站建设优化app001推广平台
  • 淘宝客必须建网站吗cps广告联盟平台
  • 做网站的接口是意思百度指数指的是什么
  • jsp动态网站开发技术与实践教程怎么做好网站营销推广
  • 12306网站如何做解绑360优化大师官方版
  • 做网站需要服务器seo数据是什么
  • 巴中建设银行网站免费的seo
  • 公司的网站难不难做手机优化大师怎么退款
  • 各学院二级网站建设通报58同城推广效果怎么样