JAVA8学习(一)List、Map的循环迭代

学习怎样用java8去循环迭代

1、Map

Map<Integer, String> items = new HashMap<>();
items.put(1, "wangwu");
items.put(2, "zhangsan");
items.put(3, "lisi");

items.forEach((k,v)->System.out.println("Item : " + k + " Count : " + v));

items.forEach((k,v)->{
	System.out.println("Item : " + k + " Count : " + v);
	if("zhansan".equals(k)){
		System.out.println("Hello zhangsan");
	}
});

2、List

List<String> items = new ArrayList<>();
items.add("A");
items.add("B");
items.add("C");
items.add("D");
items.add("E");

//lambda
//Output : A,B,C,D,E
items.forEach(item->System.out.println(item));

//Output : C
items.forEach(item->{
	if("C".equals(item)){
		System.out.println(item);
	}
});

//method reference
//Output : A,B,C,D,E
items.forEach(System.out::println);

//Stream and filter
//Output : B
items.stream()
	.filter(s->s.contains("B"))
	.forEach(System.out::println);


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Java 8 引入了 lambda 表达式,使得遍历列表变得更加简单。例如,你可以使用 forEach 方法遍历列表: ``` List<String> list = Arrays.asList("a", "b", "c"); list.forEach(s -> System.out.println(s)); ``` 你也可以使用方法引用(method reference)更简化代码: ``` list.forEach(System.out::println); ``` 如果你需要在遍历列表的同时获取索引,你可以使用 for 循环: ``` for (int i = 0; i < list.size(); i++) { String s = list.get(i); System.out.println(i + ": " + s); } ``` 你还可以使用 Java 8 的 IntStream 来遍历列表: ``` IntStream.range(0, list.size()).forEach(i -> { String s = list.get(i); System.out.println(i + ": " + s); }); ``` ### 回答2: 在Java 8中,我们可以使用不同的方法来循环遍历List。 1. 使用传统的for循环: ``` List<String> list = Arrays.asList("A", "B", "C"); for (int i = 0; i < list.size(); i++) { String element = list.get(i); System.out.println(element); } ``` 2. 使用增强的for循环: ``` List<String> list = Arrays.asList("A", "B", "C"); for (String element : list) { System.out.println(element); } ``` 3. 使用Lambda表达式和Stream API的forEach()方法: ``` List<String> list = Arrays.asList("A", "B", "C"); list.stream().forEach(element -> { System.out.println(element); }); ``` 4. 使用Lambda表达式和Stream API的forEachOrdered()方法(按照元素的顺序循环): ``` List<String> list = Arrays.asList("A", "B", "C"); list.stream().forEachOrdered(element -> { System.out.println(element); }); ``` 以上是几种常见的循环遍历List的方法。根据具体需求和情况,我们可以选择最合适的方法来使用。值得一提的是,Stream API提供了更多的功能和操作,例如过滤、映射等,可以根据具体需求来进一步优化我们的代码。 ### 回答3: Java 8中提供了一种更简洁和方便的方式来对List进行循环遍历,即使用Lambda表达式和Stream API。 首先,我们可以使用forEach方法来对List中的每个元素进行迭代。例如: List<String> list = Arrays.asList("apple", "banana", "orange"); list.forEach(str -> System.out.println(str)); 上述代码中,我们创建了一个包含三个水果的List,并通过forEach方法使用Lambda表达式打印出每个水果的名称。输出结果将会是: apple banana orange 除了forEach之外,Stream API还提供了很多其他的中间操作和终端操作,可以对List进行过滤、映射、排序等操作。 例如,我们可以使用filter方法对List进行过滤,只保留符合条件的元素: List<String> filteredList = list.stream() .filter(str -> str.startsWith("a")) .collect(Collectors.toList()); 上述代码中,我们使用stream方法将List转换成Stream对象,并通过filter方法保留以字母"a"开头的元素。最后使用collect方法将过滤后的结果收集到一个新的List中。 除了过滤操作,我们还可以使用map方法对List中的元素进行映射操作: List<Integer> lengthList = list.stream() .map(str -> str.length()) .collect(Collectors.toList()); 上述代码中,我们使用map方法将List中的每一个字符串转换为其长度,并将转换后的结果收集到一个新的List中。 总之,Java 8中提供了更加方便和简洁的方式来对List进行循环遍历和处理操作。通过使用Lambda表达式和Stream API,我们可以更加灵活地操作List中的元素,提高代码的可读性和维护性。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值