问题描述
我对javax.util.function包中可用的默认功能接口名称中使用的命名约定感到困惑:
例如,Function的原始专业化名称如下: 参数类型为指定类型的IntFunction / LongFunction / DoubleFunction
但是供应商的原始专业化名称如下: 返回类型是指定类型的BooleanSupplier / DoubleSupplier / LongSupplier / IntSupplier。
如果您在java.util.function中比较其他接口的名称和功能,那么这些名称应该不是这样的: ToBooleanSupplier / ToDoubleSupplier / ToLongSupplier / ToIntSupplier?
解决方法
ToIntFunction
,ToDoubleFunction
等中的“ to”一词表示正在将某些内容转换为。该函数的输入参数将被转换为int / double / whatever。
“供应商”一词表示不接受任何输入并返回某个值的函数。它供应值。没有输入,只有输出。
添加“至”将是多余的和/或令人误解的:多余的,因为它已返回值的事实已经由单词“供应商”表示;误导,因为没有转换。这些值是凭空产生的。