入参类型 + * @return {@link TryConsumer} + */ + static
TryConsumer
of(ThrowableConsumer super P> consumer) {
+ return new TryConsumer<>(consumer);
+ }
+
+ /**
+ * 构建供给型(无入参,有返回)Tryable 对象
+ *
+ * @param supplier {@link ThrowableSupplier} 类型函数式接口
+ * @param 入参类型
+ * @param TryFunction of(ThrowableFunction super P, ? extends R> function) {
+ return new TryFunction<>(function);
+ }
+
+ /**
+ * 构建运行型(无入参,无返回)Tryable 对象
+ *
+ * @param runnable {@link ThrowableRunnable} 类型函数式接口
+ * @return {@link TryRunnable}
+ */
+ static TryRunnable of(ThrowableRunnable runnable) {
+ return new TryRunnable(runnable);
+ }
+
+ @SuppressWarnings({"ConstantConditions", "Convert2MethodRef"})
+ static void main(String[] args) {
+ System.out.println("------------有返回值,无入参----------------");
+ // 有返回值,无入参
+ String param = "hello";
+ Long result = Try.of(() -> Long.valueOf(param)).get(0L);
+ System.out.println("Long.valueOf 1: " + result);
+
+ result = Try.of(() -> Long.valueOf(param)).get();
+ System.out.println("Long.valueOf 2: " + result);
+
+ System.out.println("------------有返回值,有入参----------------");
+ // 有返回值,有入参
+ result = Try.