有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

BinaryOperator的java标识

我在Java8的UnaryOperator接口中看到了下面这段代码,它对参数不做任何操作,并返回相同的值

static <T> UnaryOperator<T> identity() {
    return t -> t;
}

BinaryOperator是否接受samekind的两个参数并返回一个值

static <T> BinaryOperator<T> identity() {
    return (t,t) -> t;
}

我为什么问这个问题是为了满足以下要求

List<String> list = Arrays.asList("Abcd","Abcd");
Map<String,Integer> map = list.stream().collect(Collectors.toMap(str->str, 
str->(Integer)str.length(),(t1,t2)->t1));
System.out.println(map.size());

在上面的代码中,我不想对同一个键的两个值做任何事情,我只想返回一个值,因为在我的例子中,值肯定是相同的。 由于我没有使用t2值声纳投掷错误,所以我发现有任何类似于UnaryOperator的东西。identity()用于二进制操作器,同样在java8中


共 (0) 个答案