Я пытаюсь вернуть логическое значение внутри метода и использую потребительскую функцию. Есть ли способ вернуть это значение непосредственно внутри этого выражения Consumer?
Вот код:
private static boolean uuidExists(UUID uuid) {
MySQL.getResult("", rs -> {
try {
if(rs.next()){
return rs.getString("UUID") != null;
}
} catch (SQLException e) {
}
});
return false;
}
РЕДАКТИРОВАТЬ:
Я знаю, что могу создать логическое значение и изменить это значение, но я не хочу этого делать.
РЕДАКТИРОВАТЬ:
Код получения результата:
public static void getResult(String qry, Consumer<ResultSet> consumer){
new BukkitRunnable() {
@Override
public void run() {
if(isConnected()) {
consumer.accept(Warpixel.getWarpixel().getStats().getResult(qry));
return;
}
consumer.accept(null);
}
}.runTaskAsynchronously(Bedwars.getMain());
}
MySQL
и является ли онgetResult
асинхронным? Если он асинхронный, что он возвращает? Можете ли вы опубликовать его подпись? - person ernest_k   schedule 07.12.2018Consumer
accept
— его тип возвращаемого значения —void
. Javadoc. Даже в документах говорится, что представляет операцию, которая принимает один входной аргумент и не возвращает результата - person UninformedUser   schedule 07.12.2018Predicate<ResultSet>
в объявлении вашего метода вместоConsumer<ResultSet>
. - person Ousmane D.   schedule 07.12.2018MySQL.getResult
(т.е. типы параметров и тип возвращаемого значения) - person fps   schedule 07.12.2018Predicate
-› прочитайте Javadoc, он получает значение и возвращает значение - person UninformedUser   schedule 07.12.2018Consumer
, аPrediacte
, если он должен возвращать результат - person UninformedUser   schedule 07.12.2018