这是我参与8月更文挑战的第26天,活动详情查看:8月更文挑战
@TOC
- stream skip跳行方法
- stream limit 限行方法
- skip 和 limit 组合 实现内存分页
代码示例:
public class Lambda12 {
public static void main(String[] args) {
List<String> list = Arrays.asList("1", "2", "3", "4", "5", "6", "7", "8", "9", "10");
/**
* skip:跳跃 从第几个开始 下标从0开始
*/
System.out.println("skip:跳跃方法 从第几个开始 下标从0开始.");
list.stream().skip(3).forEach(t -> System.out.println(t));
/**
* limit:限行方法 限制输出几个.
*/
System.out.println("limit:限行方法 限制输出几个.");
list.stream().limit(3).forEach(t -> System.out.println(t));
/**
* skip 和 limit 组合 实现内存分页
*/
System.out.println("skip 和 limit 组合 实现内存分页");
int skip = 0;
final int _LIMIT = 3;
for (int i = 0; i < 4; i++) {
skip = i * _LIMIT;
list.stream().skip(skip).limit(_LIMIT).forEach(t -> System.out.print(t + "\t"));
System.out.println("\n=============第" + (i+1) + "页===========");
}
}
}
输出结果:
skip:跳跃方法 从第几个开始 下标从0开始.
4
5
6
7
8
9
10
limit:限行方法 限制输出几个.
1
2
3
skip 和 limit 组合 实现内存分页
1 2 3
=============第1页===========
4 5 6
=============第2页===========
7 8 9
=============第3页===========
10
=============第4页===========
lambda表达式在实际开发中其实很好使用,建议大家多实用lambda表达式,但是就是语法比较抽象,不容易懂。需要多使用才能掌握。
public class Lambda03 {
public static void main(String[] args) {
/**
* 一个String入参
*/
LambdaInterface31 lambdaInterface31 = (String str) -> System.out.println("welcome:" + str);
lambdaInterface31.fun("Lambda.");
/**
* 两个String入参
*/
LambdaInterface32 lambdaInterface32 = (String name, int age) -> System.out.println(name + "今年" + age + "岁。");
lambdaInterface32.fun("小明", 3);
/**
* 两个int入参 带返回值
*/
LambdaInterface33 lambdaInterface33 = (int x, int y) -> {
int sum = x + y;
return sum;
};
int sum = lambdaInterface33.sum(2, 3);
System.out.println("2+3="+sum);
/**
* 无参数有返回值
*/
LambdaInterface34 lambdaInterface34 = () ->{
System.out.println("无参数有返回值");
return "无参数有返回值";
};
lambdaInterface34.fun();
}
}
interface LambdaInterface31 {
public void fun(String str);
}
interface LambdaInterface32 {
public void fun(String name, int age);
}
interface LambdaInterface33 {
public int sum(int x, int y);
}
interface LambdaInterface34 {
public String fun();
}