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

flash as3 网站模板网站购物系统制作雨辰资讯电子商务类网站开发

flash as3 网站模板,网站购物系统制作雨辰资讯电子商务类网站开发,cad精品课网站建设,广州服装设计公司排行一、Lambda 表达式简介 Lambda 表达式是一种简洁的函数式编程方式,用于实现只有一个方法的接口(例如函数式接口)。 基本语法 (parameters) -> expression (parameters) -> { statements; } 参数:可以有零个或多个参数。…

一、Lambda 表达式简介

Lambda 表达式是一种简洁的函数式编程方式,用于实现只有一个方法的接口(例如函数式接口)。

基本语法

(parameters) -> expression
(parameters) -> { statements; }
  • 参数:可以有零个或多个参数。
  • 箭头操作符 (->):将参数与函数体分隔开。
  • 函数体:可以是单行表达式,也可以是包含多行语句的代码块。

示例

1. 使用匿名
Runnable runnable = new Runnable() {@Overridepublic void run() {System.out.println("传统方式:Hello World!");}
};
new Thread(runnable).start();
2. 使用 Lambda 表达式
Runnable runnable = () -> System.out.println("Lambda 表达式:Hello World!");
new Thread(runnable).start();

Lambda 表达式让代码更加简洁,提高了可读性。


二、Stream API 简介

Stream 是 Java 8 引入的一个强大的 API,用于处理集合中的数据流。它支持链式操作,允许我们以声明式的方式处理数据。

Stream 的操作类型

  1. 中间操作:返回一个新的 Stream,如 filtermapsorted 等。
  2. 终止操作:返回一个值或集合,如 collectreducecount 等。

三、常见的 Stream 操作示例

1. List 转 Set

我们可以通过 StreamList 转换为 Set,去除重复元素。

import java.util.*;
import java.util.stream.Collectors;public class ListToSetExample {public static void main(String[] args) {List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 2, 3, 1);// List 转 SetSet<Integer> uniqueNumbers = numbers.stream().collect(Collectors.toSet());System.out.println("去重后的 Set: " + uniqueNumbers);}
}

输出

去重后的 Set: [1, 2, 3, 4]

2. Map 转 List

通过 Stream 可以将 Map 的键、值或者键值对转为 List

import java.util.*;
import java.util.stream.Collectors;public class MapToListExample {public static void main(String[] args) {Map<Integer, String> map = new HashMap<>();map.put(1, "Java");map.put(2, "Python");map.put(3, "C++");// Map 的键转为 ListList<Integer> keys = map.keySet().stream().collect(Collectors.toList());// Map 的值转为 ListList<String> values = map.values().stream().collect(Collectors.toList());// Map 的键值对转为 ListList<String> entries = map.entrySet().stream().map(entry -> entry.getKey() + "=" + entry.getValue()).collect(Collectors.toList());System.out.println("键列表: " + keys);System.out.println("值列表: " + values);System.out.println("键值对列表: " + entries);}
}

输出

键列表: [1, 2, 3]
值列表: [Java, Python, C++]
键值对列表: [1=Java, 2=Python, 3=C++]

3. 过滤(Filter)

通过 filter 方法可以对集合中的元素进行筛选。

import java.util.*;
import java.util.stream.Collectors;public class FilterExample {public static void main(String[] args) {List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David");// 筛选名字长度大于 3 的元素List<String> filteredNames = names.stream().filter(name -> name.length() > 3).collect(Collectors.toList());System.out.println("筛选后的名字: " + filteredNames);}
}

输出

筛选后的名字: [Alice, Charlie, David]

4. 求和

通过 reduce 方法可以对数字集合进行累加。

import java.util.*;public class SumExample {public static void main(String[] args) {List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);// 求和int sum = numbers.stream().reduce(0, Integer::sum);System.out.println("总和: " + sum);}
}

输出

总和: 15

5. 分组

通过 Collectors.groupingBy 方法可以对集合中的元素进行分组。

import java.util.*;
import java.util.stream.Collectors;public class GroupingExample {public static void main(String[] args) {List<String> names = Arrays.asList("Alice", "Bob", "Charlie", "David", "Daniel");// 按名字长度分组Map<Integer, List<String>> groupedByLength = names.stream().collect(Collectors.groupingBy(String::length));System.out.println("按名字长度分组: " + groupedByLength);}
}

输出

按名字长度分组: {3=[Bob], 5=[Alice, David], 7=[Charlie, Daniel]}

6. Map 和 Reduce 操作

  • Map:将元素映射为另一种类型。
  • Reduce:将多个值归约为一个值。
Map 示例
import java.util.*;public class MapExample {public static void main(String[] args) {List<String> names = Arrays.asList("alice", "bob", "charlie");// 将名字转换为大写List<String> upperCaseNames = names.stream().map(String::toUpperCase).collect(Collectors.toList());System.out.println("转换为大写: " + upperCaseNames);}
}

输出

转换为大写: [ALICE, BOB, CHARLIE]
Reduce 示例
import java.util.*;public class ReduceExample {public static void main(String[] args) {List<Integer> numbers = Arrays.asList(1, 2, 3, 4, 5);// 计算乘积int product = numbers.stream().reduce(1, (a, b) -> a * b);System.out.println("乘积: " + product);}
}

输出

乘积: 120

http://www.yayakq.cn/news/353768/

相关文章:

  • 温州网站开发苏州高端网站建设定制
  • 建筑招聘最好的网站网站上面的内容里面放照片怎么做的
  • 关于网站建设的职位长沙装修公司前十强
  • 南京网站设计优化公司农村电商平台入口
  • 网站网页优化怎么做wordpress 关联表
  • 网站的建设参考文献广州网站开发培训学校
  • 网站建站策划wordpress数据库在哪
  • 网站服务器如何做热备价建工网校和建工社是一个吗
  • 餐饮网站建设研究问题企业官网网站建设咨询
  • 美工在网站建设中的作用3seo
  • 东莞短视频推广是哪个seo推广怎么弄
  • 网站建设 长春反馈网站制作
  • 江浦做网站京东网上商城官网
  • 济南建网站公司排行榜官网网站源码
  • 岗顶网站建设安装应用商店
  • 社团网站设计网页福州专业的seo软件
  • 网站里怎样做点击量查询网站开发技术主管工作职责
  • 深圳市做网站建设肇庆做网站公司
  • 网站里做个子网页怎么做网站统计插件
  • 高邮企业网站建设九江建网站的公司
  • php如何自学做网站物业管理系统er图
  • wordpress建站流程wordpress置顶的样式
  • 南京谁做免费网站ssl外贸网站
  • wordpress电商网站如何查看一个网站是否备案
  • 博客网站开发技术电商网站运营策划
  • 开发公司企业展厅附子seo教程
  • 服装东莞网站建设深圳网站设计合理刻
  • 网站推广页html网站模版
  • 公司电商网站开发自己做的网站怎样弄网上
  • 网站开发建设合同范本制作网页时一般需要兼容哪些浏览器