问题标签 [supplier]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1774 浏览

java - 为什么可选不实施供应商?

我们都知道Optional<T>有一个方法T get(),为什么不实现Supplier<T>呢?

如果碰巧没有理由,如果 Oracle 将其实现到 Java 的未来版本中,它会破坏任何以前的代码吗?

0 投票
0 回答
274 浏览

java - 为什么这个 lambda 表达式不能自动转换/热盒到供应商?

在调用参数为... 并根据需要Supplier<O>输入lambda的函数时。我有以下错误适用并阻止 ide (eclipse-oxygen) 构建项目

Internal compiler error: java.lang.UnsupportedOperationException: no glb for [public abstract class java.lang.Number

方法类似

方法:

回到给出的错误,类中没有提到的类号;然而,一个核心 java 类在编译时出现错误。

但是,当将级编辑为

error不再发生,IDE 成功构建并遵守。我正在发布这篇文章,因为除了建议从 eclipse 中删除损坏的构建器之外,我在网上找不到类似的帖子,这对这个问题的变体不起作用;因此,我正在记录这有助于其他有类似问题的开发人员。

我还要求找出发生了什么错误以及为什么会发生?

PS8.0_151我注意到这只是在 java 更新到from后才成为问题8.0_144

更新:

我已将 java 版本从 8u151 更改为 8u152 并尝试了 9,但该工作区中仍然存在错误。但是,我在eclipse中创建了一个新项目来重新创建错误,即使我更改了java版本,我也没有成功。结论:eclipse似乎抛出了错误,Java Builder和Spring Project Builder都抛出了同样的错误。

0 投票
2 回答
33 浏览

java - 如何创建对构造函数参数有限制的类的供应商?

我有一个名为 Human 的类(在构造函数中接受名称(字符串)和高度(int)),并且还需要创建这个类的供应商,它将创建一个对象,但我希望对象的名称在 5-10 个字符之间, 高度应在 110-250 之间。在Java中可以这样做吗?

0 投票
1 回答
476 浏览

java - Java 8 供应商行为:最终变量可能未初始化

Java 不允许在供应商内部使用 final 变量,因为它可能没有被初始化,但在前面加上“(this)”。to 变量使它编译并运行良好。

此外,如果在分配变量之前调用此类供应商会导致 NullPointerException 而不是编译器错误,如果在之后调用则按预期运行。

这种行为是在某处描述的吗?

我正在使用 OpenJDK 1.8.0_151。

例子:

0 投票
1 回答
3292 浏览

java - java:缓存数据库表,刷新 1 小时

我需要一些java缓存解决方案。我需要用 1 小时的驱逐存储 1 个 db 表的内容,然后清除所有值并再次从表中填充数据。

我正在研究番石榴缓存,但它似乎没有在CacheLoader中提供所需的 api 。方法CacheLoader.load仅填充 1 个值(因此我想同时填充所有值)并且CacheLoader.loadAll应该由getAll调用触发,在我的情况下应该避免。

这是我想要的伪代码:

可能与此重复。但它似乎很旧并且不包含所需的解决方案。

我也有不同的用例,其中一些数据应该从 Web 服务器或文件系统上的文件中检索,所以我不想依赖任何特定于数据库的方法作为休眠缓存或类似的东西。

谢谢!

0 投票
2 回答
1201 浏览

java - 使用 Java 供应商/函数在静态方法中传递方法

我有几节课:

如您所见,这两个类的验证部分是相同的。我想尝试使这成为一种通用方法。为了那个原因:

然后调用它:

但我得到一个错误说Non static method cannot be referenced from static context.

编辑:我尝试的另一个选项是 using Function,即我传入 a<TextContent, String> mapper并在我的流中使用.map(x -> mapper.apply(x). 但是,当我尝试将它传递给函数时,validateInputs(textAsset, requestId, TextContent::externalId)我得到了同样的错误Non static method cannot be referenced from static context.

0 投票
2 回答
2982 浏览

java-8 - 如何从 kotlin 传递供应商?

看代码:

Intellij 告诉我:

虽然这个编译完美但没有执行器:

如何将供应商从 kotlin 传递给 java 8 API?

Offtop(只是我今天的心情)

他们创建了一个CompletableFuture.allOf()带有返回类型的好方法void,并创建了这个 - 传递供应商作为第一个参数......我喜欢 java,但所有这些有时让我发疯 - 为什么不看 scala 并创建相同的东西???Kotlin,scala 自动将第二个参数公开为函数,如myFunc("parameter"){"function"}. 所以现在我创建了一个代码,并且必须花费几个小时来编译一些糖(这应该可以节省我的时间)
:(((

0 投票
3 回答
2003 浏览

java - Java如何在地图中存储getter

我想通过给定的枚举调用动态吸气剂。我想在静态地图中定义它。但我不确定我的对象将如何使用该方法。

我有颜色枚举和对象库。

我想要一个 Map ,所以当我有一个按类型的新库对象时,我会调用正确的 get。例如 :

但是这样它不会编译。请问有什么建议吗?

0 投票
1 回答
53 浏览

java - 可运行类未执行

我实现了一个虚拟计数器,只是在 0-100 之间上下计数。

这很简单,工厂提供了一个实现 Runnable 的 VirtualCounter。

有效的是Runnable 的这种用法

什么不工作是这样的:

所以我知道如何让它运行,但是我真的很想了解为什么第一次尝试有效而第二次无效。

第二个的 run 方法永远不会被调用。调试器不由明白。这种行为有什么好的解释吗?

谢谢

0 投票
2 回答
247 浏览

scala - Scala 的“按名称调用”能否被视为 Java8 功能接口 API 的语法糖?

Scala 的“call be name”示例:

Java结果:

Java 的功能接口 API 示例:

Java结果:

javap考虑到上述两种情况的结果几乎相同,它们在内部评估的方式是否有任何重大差异

根据我目前的理解,它们都使用闭包并懒惰地评估表达式。如果理解有误请指正。