Flask接口签名sign原理与实例代码浅析
359
2022-09-23
Java与Scala创建List与Map的实现方式
目录java与Scala创建List与MapJava自定义map与scala map对比1. 背景2. java代码
Java与Scala创建List与Map
//Java
List
Map
//Scala
val languages = new util.ArrayList[String]
val mapFields=new util.HashMap[String, Class]
Java自定义map与scala map对比
1. 背景
在学习scala过程中,不可避免需要将java与scala对比,本文就是基于scala的map,使用java进行实现
jdk1.8中,引入了Stream、lambda表达式,这让java也可以支持函数式编程。
2. java代码
2.1 自定义实现的map
package com.doit.udf;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
/**
* @author hulc
* @slogan: just do it
* @date 2020/9/13 21:16
*/
public class UserDefineFunc {
public static void main(String[] args) {
test1();
}
private static void test1() http://{
// 使用java来实现scala中针对集合的map、reduce、filter函数的效果
List
list.addAll(Arrays.asList(1,2,3,4,5,6,7,8,9));
MyList
// 使用匿名内部类方式进行自定义map方法调用
List
@Override
public
if (k instanceof Integer) {
Integer i = (Integer) k;
i += 10;
return (String) ("" + i);
}
return null;
}
});
for (Object o : list1) {
System.out.println(o.toString());
}
}
}
class MyList
private List
public MyList(List
this.words = words;
}
public List
List
for (T t : words) {
Object map = function.map(t);
ts.add(map);
}
return ts;
}
}
interface MyMapFunction {
// map就是一个转换函数,输入一个K,转换为一个T
}
2.2 使用jdk的Sream进行函数式处理
private static void test2() {
List
list.addAll(Arrays.asList(1,2,3,4,5,6,7,8,9));
// 将list转换为Stream,再进行处理,这时候就可以使用函数式进行处理
Stream
Stream
w += 10;
return "" + w;
});
// 遍历打印
Object[] toArray = stringStream.toArray();
for (Object o : toArray) {
System.out.println(o.toString());
}
}
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~