标签:接口测试 oid 指定 实践 字符串 public dex check test
1、四大核心函数式接口
接口类型 | 表现形式 | 实现方法 | 说明 |
消费性接口 | Consumer<T> | void accept<T t> | 参数为 t,无返回值 |
供给型接口 | Supplier<T> | T get() | 无参数,返回值类型为 T |
函数型接口 | Function<T,R> | R apply(T t) | 参数为 t,返回值类型为 R |
断言型接口 | Predicate<T> | Boolean test(T t) | 参数为 t,返回值类型为 Boolean |
2、四大核心函数接口实践
public class LambdaDemo {
// 1、消费性接口测试
@Test
public void testLambda01() {
someThingHappy("summer", (x) -> {
String str = x;
System.out.println("某个人喜欢大保健,他觉得只有大保健能让他快乐,这个人就是 " + x);
});
}
// 2、供给型接口测试
@Test
public void testLambda02() {
List<String> strEqualTo5 = getStrEqualTo5(() -> {
String[] strArr = {"summer", "erico", "puff", "defire", "hank"};
List<String> list = Arrays.asList(strArr);
ArrayList<String> strList = new ArrayList<>();
for (String str : list) {
if (str.length() == 4) {
strList.add(str);
}
}
return strList;
});
System.out.println(strEqualTo5);
}
// 3、函数型接口测试
@Test
public void testLambda03() {
Integer index = getIndexFromArray((x) -> {
int i = 0;
for (int j = 0; j < x.length; j++) {
if (Objects.equals(x[j], "summer")) {
i = j;
}
}
return i;
});
System.out.println(index);
}
// 4、断言型接口测试
@Test
public void testLambda04() {
Boolean isEricoExists = checkUser((x) -> {
Boolean flag = false;
for (String str : x) {
if (Objects.equals(str, "erico")) {
flag = true;
}
}
return flag;
});
System.out.println(isEricoExists);
}
// 需求 1、输出一段快乐的话
// Consumer<T> : 消费性接口
// void accept(T t)
public void someThingHappy(String userName, Consumer<String> consumer) {
consumer.accept(userName);
}
// 需求 2、返回一个集合,集合中存放长度等于 5 的字符串
// Supplier<T> : 供给型接口
// T get();
public List<String> getStrEqualTo5(Supplier<List<String>> supplier) {
return supplier.get();
}
// 需求 3、筛选出名称为 summer 的用户,并返回其在数组中的索引位置
// Function<T,R>
// R apply(T t)
public Integer getIndexFromArray(Function<String[], Integer> function) {
String[] strArr = {"erico", "puff", "defire", "hank", "summer"};
return function.apply(strArr);
}
// 需求 4、判断指定的集合中是否存在一个叫 erico 的人
// Predicate<T>
// Boolean test<T>
public Boolean checkUser(Predicate<List<String>> predicate) {
String[] strArr = {"erico", "puff", "defire", "hank", "summer"};
List<String> listStr = Arrays.asList(strArr);
return predicate.test(listStr);
}
}
标签:接口测试 oid 指定 实践 字符串 public dex check test
原文地址:https://www.cnblogs.com/xiaomaomao/p/14904806.html