JAVA Stream流的map映射

获取流之后,可以使用映射方法:

map(用于转换的Lambda表达式)

映射:就是将一个对象转换成另一个对象,把老对象映射到新对象上。

例如:
“小颖,91” 转换为 “91” :将一个长字符转换成为一个短字符;
“98” 转换为 98 :将一个字符串转换为一个int数字;

举例一:

    public static void main(String[] args) {

        List<String> ls = new ArrayList<>();
        ls.add("小白");
        ls.add("小黑子");
        ls.add("蓝天白");
        ls.add("小红");


        //map映射,变为新的字符串
        ls.stream().map(a -> a + "新的字符串").forEach(System.out::println);

        //map转为一个学生对象
        ls.stream().map( b -> new Student(b,22)).forEach(System.out::println);
        
    }

举例二:

“98” 转换为 98 :将一个字符串转换为一个int数字;
“小颖,91” 转换为 “91” :将一个长字符转换成为一个短字符;

public class StreamMap {
	public static void main(String[] args) {
		//这个集合当中存放的是字符串类型
		ArrayList<String> list = new ArrayList<>();
		list.add("100");
		list.add("200");
		list.add("300");
		
		//字符串转字符
		//"98" 转换为98:将一个字符串转换为一个int数字;
		Stream<Integer> streamA = list.stream().map((String str) -> {
			int num = Integer.parseInt(str);
			return num;
		});
		
		Stream<Integer> streamB = list.stream().map(str ->{
			int num = Integer.parseInt(str);
			return num;
		});
		
		Stream<Integer> streamC = list.stream().map(str ->{
			return Integer.parseInt(str);
		});
	
		Stream<Integer> streamD = list.stream().map(Integer::parseInt);
		


		//分割字符串
		//"小颖,91" 转换为"91":将一个长字符转换成为一个短字符;
		ArrayList<String> list2 = new ArrayList<>();
		list2.add("小颖,91");
		list2.add("姚明,95");
		list2.add("小红,87");
		
		Stream<String> stream1 = list2.stream().map((String str) ->{
			String[] array = str.split(",");
			String result = array[1];
			return result;
		});
		
		Stream<String> stream2 = list2.stream().map(str ->{
			String[] array = str.split(",");
			String result = array[1];
			return result;
		});
		
		Stream<String> stream3 = list2.stream().map(str ->{
			String[] array = str.split(",");
			return array[1];
		});
		
		Stream<String> stream4 = list2.stream().map(str ->{
			return str.split(",")[1];
		});
		
		Stream<String> stream5 = list2.stream().map(str -> str.split(",")[1]);
	}
}

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值