有没有办法在这两行中使用相同的方法引用作为吸气剂?我尝试了一个与第一个语句一起使用的Supplier,但是第二个语句需要一个Function。
Integer id = Integer.parseInt(accountModel.getExternalId());
accountsWithNonNumericIds.sort(Comparator.comparing(AccountModel::getExternalId));
答案 0 :(得分:1)
方法引用可以生成Function
,但不能生成Supplier
,因为要获取ID,您需要知道从中获取该ID的帐户。
Function<AccountModel,String> func = AccountModel::getExternalId;
Integer id = Integer.parseInt(func.apply(accountModel));
accountsWithNonNumericIds.sort(Comparator.comparing(func));