ImmutableList.builder() 错误?

2023-11-28

我刚刚开始学习番石榴,我注意到一些奇怪的事情ImmutableList.builder().

这不能编译:

List<String> iList = ImmutableList.builder().add("One").add("Two").build(); 
//Type mismatch: cannot convert from List<Object> to List<String>

这有效:

List<String> iList = new ImmutableList.Builder<String>().add("One").add("Two").build(); 

我可以忍受使用new ImmutableList.Builder<String>()但这是一个错误吗ImmutableList.builder()?


不,只需提供类型参数

List<String> iList = ImmutableList.<String>builder().add("One").add("Two").build(); 

这绝不是 Guava 中的错误,它只是 Java 语言的一个功能/限制。编译器无法推断返回类型build()来自先前的方法调用或结果被分配到的变量的声明。

安吉丽卡·兰格explains this

自动类型参数推断。该方法像常规方法一样被调用 非泛型方法,即不指定类型的方法 论据。在这种情况下,编译器会自动推断类型 论点来自调用上下文.

她还举了一个类似的例子为什么实例创建表达式的类型推断失败?

String s = new ArrayList<>().iterator().next();  // error

和国家

在上面的示例中,会发出错误消息,因为 new-expressionnew ArrayList<>()没有构造函数参数,它既不会出现在赋值的右侧,也不会出现在 方法调用的参数。相反,它出现在一条链中 方法调用。这样的链不是有效的类型推断上下文。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ImmutableList.builder() 错误? 的相关文章

  • 无法访问类型的封闭实例。 [复制]

    这个问题在这里已经有答案了 整个代码是 public class ThreadLocalTest ThreadLocal
  • 多线程环境下如何更好的使用ExecutorService?

    我需要创建一个库 其中包含同步和异步方法 executeSynchronous 等待直到有结果 返回结果 executeAsynchronous 立即返回一个 Future 如果需要 可以在其他事情完成后进行处理 我的图书馆的核心逻辑 客户
  • 如何让Spring RabbitMQ创建一个新的队列?

    根据我对rabbit mq的 有限 经验 如果您为尚不存在的队列创建新的侦听器 则会自动创建该队列 我正在尝试将 Spring AMQP 项目与rabbit mq 一起使用来设置侦听器 但出现错误 这是我的 xml 配置
  • 使用除 SINGLE_TABLE 之外的任何其他 Hibernate 继承策略时 JVM 崩溃

    好吧 这可能不太可能 但还是这样吧 在Java JRE 1 6 0 26 b03 中我有两个类 SuperControl及其子类SubControl 它们都需要是持久对象 我正在使用 Hibernate Annotations 来实现这一点
  • @OneToMany 与 @JoinTable 错误

    我试图理解 OneToMany with JoinTable 对于这样的场景 我正在使用 JPA 2 1 Hibernate 5 0 4 和 Oracle 11 XE 当我打电话时userDao save user 下面的代码 我有 jav
  • 在 TestNG 中运行多个类

    我正在尝试自动化一个场景 其中我想登录一次应用程序 然后进行操作而无需再次重新登录 考虑一下 我有在特定类的 BeforeSuite 方法中登录应用程序的代码 public class TestNGClass1 public static
  • 哈希码是否用于加速集合中的对象查找?

    IIUC 相同类型的两个不同对象可以存储在 HashSet 中 即使两个对象在以下情况下返回相同的值 hashCode 叫做 例如根据本文 https eclipsesource com blogs 2012 09 04 the 3 thi
  • 用 java 编写解释器时的 switch 或 if 语句

    当前的作业需要我编写一个程序 以一种非常微小且基本的编程语言 行为有点像 FORTRAN 来读取包含指令的文件并执行这些指令 基本上它是我猜的语言的简单解释器 它是完全线性的 所有语句都是按顺序定义的 并且只有字符串和整数变量 我需要查找和
  • 战争库中的罐子爆炸

    我们可以将分解的 jar 文件放入 war web inf 库中吗 它在 JBOSS 4 2 中对我不起作用 我收到以下错误并且无法部署应用程序 Caused by javax management RuntimeOperationsExc
  • 在服务器内部调用 Web 服务

    我有一个网络服务 getEmployee 当传递 id 时 它会获取单个员工的员工详细信息 同一服务器上的另一个 Web 服务 getEmployeeList 当传递一个部门时 它会获取整个员工列表 这将获取部门的 ID 然后调用 getE
  • 我们可以有虚假中断吗?

    我正在创建一个任务轮询器 每分钟都会查找任务 它看起来像这样 public class Poller private final ExecutorService e Executors newSingleThreadExecutor pub
  • Google Place Api:来自此 Android 客户端应用程序 com.package.name 的请求被阻止

    我在用PlaceAutocompleteFragment当我单击搜索字段 PlaceAutocompleteFragment 对话框消失时 我收到此错误 errors domain global re ason forbidden mess
  • Selenium - 等待网络流量

    我们将 Selenium 与 Java API 和一些 Javascript 用户扩展一起使用 我们在应用程序中使用了大量 AJAX 调用 我们的许多测试随机失败 因为有时 AJAX 调用完成得比其他时候慢 因此页面未完全加载 我们通过等待
  • Google Cloud Messaging - 立即收到或长时间延迟收到的消息

    我在大学最后一年的项目中使用谷歌云消息传递 一切正常 但我在使用 GCM 时遇到了一些麻烦 通常 消息要么几乎立即传递 要么有很大的延迟 我读过这篇文章 但我真的认为它不适用于这种情况 GCM 通常会在消息发送后立即传送消息 然而 这并不总
  • H2 - (相当)长的 INSERT 失败,错误 42000

    H2 内存中 插入 错误 42000 尝试过版本 1 4 196 1 4 197 1 4 199 我还尝试在 H2 服务器 本地 上执行 INSERT 也失败 给出错误的行 抱歉 但出于安全原因 我无法生成更多 INSERT INTO tb
  • JMockit - 初始化问题

    当我使用以下测试时 我收到警告 警告 JMockit 是按需初始化的 这可能会导致某些测试失败 请检查文档以获取更好的初始化方法 这是我的测试实现 package test import static mockit Mockit impor
  • 如何从spark中的hbase表中获取所有数据

    我在 hbase 中有一个大表 名称为 UserAction 它具有三个列族 歌曲 专辑 歌手 我需要从 歌曲 列族中获取所有数据作为 JavaRDD 对象 我尝试了这段代码 但效率不高 有更好的解决方案来做到这一点吗 static Spa
  • H2 用户定义的聚合函数 ListAgg 不能在第一个参数上使用 DISTINCT 或 TRIM()

    所以我有一个 DB2 生产数据库 我需要在其中使用可用的函数 ListAgg 我希望使用 H2 的单元测试能够正确测试此功能 不幸的是H2不直接支持ListAgg 但是 我可以创建一个用户定义的聚合函数 import java sql Co
  • Integer.parseInt 引发的 NumberFormatException

    嘿 我在学校上编码课 但老师没有很好地解释 所以我们必须在网上查找我所做的信息 但我无法找到代码中的错误 你能帮我吗 char end s do System out println Tipo de boleto char boleto c
  • 如何在java 1.8中从org.jboss.jca.adapters.jdbc.jdk8.WrappedConnectionJDK8转换为oracle.jdbc.OracleConnection

    如何在 java 1 8 中从 org jboss jca adapters jdbc jdk8 WrappedConnectionJDK8 转换为 oracle jdbc OracleConnection 目前我正在这样使用并得到以下异常

随机推荐

  • 节点js SMTP错误

    我正在通过我的 godaddy 电子邮件帐户发送电子邮件 为此 我使用 Node js 发送电子邮件 但它给出以下错误 Error getaddrinfo ENOTFOUND code ENOTFOUND errno ENOTFOUND s
  • 如何使用节标题调整 UITableViewController 中 UITableView 的大小

    我在 UITableViewController 中有一个分组的 UITableView 我想水平调整它的大小 我尝试了很多不同的方法 但没有一个是完美的 我尝试过的 1 覆盖 UITableView setFrame 但它没有移动各部分的
  • 保持数据库连接打开的成本是否昂贵?

    我正在与一些软件开发人员开会 他们建议我在我的应用程序代码中尽快关闭数据库连接 有人可以告诉我在应用程序中保持连接打开有什么危害吗 我正在从数据库的单个表中读取数据 把它想象成公共汽车上的座位 当您打开连接时 您会填满这些座位 最终 公共汽
  • 如何在 Google App Engine 启动器启动时禁用自动检查更新?

    我一直在研究 GAE 并且喜欢 Windows SDK 提供的 GAE 启动器的易用性 我的问题是 当我启动应用程序时 它需要很长时间才能响应 这是因为程序在启动应用程序之前首先检查更新 这会导致它在等待响应时挂起 我的问题是我的主要开发计
  • Java - SimpleDateFormat 解析 12:19:00 到 00:19:00

    我正在尝试解析迄今为止的字符串 但输出看起来不正确 下面是我的代码 public static void main String args Date startDate new Date DateFormat formatter new S
  • 如何从 base64 数据 URI 在服务器端保存 PNG 图像

    我正在使用 Nihilogic 的 Canvas2Image JavaScript 工具将画布绘图转换为 PNG 图像 我现在需要的是使用 PHP 将此工具生成的这些 base64 字符串转换为服务器上的实际 PNG 文件 简而言之 我目前
  • mysql ...in where 子句不明确

    SELECT cat CategoryID as CategoryID count p ProductID as CountProducts FROM Category as cat LEFT JOIN Products as p on p
  • WordPress如何使用jquery和$符号

    我在 WordPress 插件中有一个简单的 jQuery 脚本 它使用如下 jQuery 包装器 document ready function jQuery code is in here 我从 WordPress 仪表板中调用此脚本
  • 我可以在 Google Cloud Function 中访问 GraphicsMagick for ImageMagick 吗?

    我想制作一个 Google Cloud Function 来正确设置上传文件的内容类型 我知道如何使用 GraphicsMagick 或 ImageMagick 执行此操作 但我不确定 Google Cloud Function 是否具有这
  • 将对象反序列化为现已签名和版本控制的程序集

    我曾经使用 BinaryFormatter c 序列化树视图 执行此操作并包含所有可序列化类的程序集现在具有强名称并已签名 并且还获得了新的版本号 但是 实现没有改变 当我尝试反序列化 byte 数组时 该行 TreeViewData bi
  • 如何使用 Python 和 Numpy 计算 r 平方?

    我正在使用 Python 和 Numpy 来计算任意次数的最佳拟合多项式 我传递 x 值 y 值和我想要拟合的多项式次数 线性 二次等 的列表 这很有效 但我还想计算 r 相关系数 和 r 平方 确定系数 我将我的结果与 Excel 的最佳
  • javascript 检查结束日期是否大于或等于开始日期

    是否可以检查 Javascript 中的结束日期是否大于或等于开始日期 我的日期是格式为 dd mm yyyy 的字符串 try this var startDate 05 01 2011 var endDate 09 01 2011 va
  • x86 上存储到加载转发失败的成本是多少?

    在最新的 x86 架构上 存储到加载转发失败的成本是多少 特别是 存储到加载转发会失败 因为加载部分与较早的存储重叠 或者因为较早的加载或存储跨越某些导致转发失败的对齐边界 当然存在延迟成本 它有多大 是否还存在吞吐量成本 例如 失败的存储
  • 在 Windows 8 中将用户重定向到桌面浏览器

    如果用户使用 Windows 8 RT 浏览器访问我的网页 是否有办法强制或提示用户使用 Windows 8 桌面浏览器 我希望能够使用 Silverlight 等插件 是的 您可以提示用户切换到桌面版本 微软将其添加为需要它的网站的后备
  • 如何在 Git 历史记录中 grep(搜索)已提交的代码

    我过去删除过一个文件或文件中的某些代码 我可以搜索内容 而不仅仅是提交消息 吗 一个非常糟糕的解决方案是 grep 日志 git log p grep
  • 将子 iframe 中的事件附加到父窗口中的处理程序

    我无法直接访问此 iframe 的源代码 因此如果可能的话 我想这样做 我有一个由 JS 生成的 iframe 里面有一个提交按钮和一个取消按钮 提交按钮工作正常 但我希望取消按钮关闭包含 iframe 的此模式 我还希望提交按钮发送 th
  • 如何在 ASP.NET 5 Identity 中设置PasswordHasherCompatibilityMode.IdentityV3?

    目前看来默认设置为PasswordHasherCompatibilityMode IdentityV2这是 ASP NET 5 中的 HMAC SHA1 我尝试创建一个实例PasswordHasherOptions添加到服务 DI 但无法使
  • 用户控制验证组问题

    我在页面上有两个用户控件实例 两者都有字段和一个提交按钮 我已经在字段和验证器上设置了验证组 但由于某种原因 在验证两个用户控件的验证器时会触发 这个方法也有效 Dim valGroup String format 0 validation
  • GCC默认main返回值不为零

    我有一些没有从 main 显式返回的 C 程序 如下所示 int main int argc char argv blah blah 如果我使用 GCC 4 6 3 和以下选项编译它们 gcc file c Wall Wextra 程序不会
  • ImmutableList.builder() 错误?

    我刚刚开始学习番石榴 我注意到一些奇怪的事情ImmutableList builder 这不能编译 List