gpt4 book ai didi

java - 在错误消息中捕获#XXX(Java 泛型)

转载 作者:行者123 更新时间:2023-11-30 11:50:29 25 4
gpt4 key购买 nike

我为一个愚蠢的问题道歉;只是无法想出一个合适的术语来搜索。尝试编译第三方源时,我遇到了以下编译错误:

/Users/alf/Work/concise.svn/ExtendedSet/src/it/uniroma3/mat/extendedset/transactions/PairSet.java:[230,28] inconvertible types
found : java.util.Collection<capture#741 of ? extends it.uniroma3.mat.extendedset.transactions.Pair<XT,XI>>
required: it.uniroma3.mat.extendedset.transactions.PairSet<XT,XI>

我想我知道问题出在哪里——但是 capture#741 是什么意思?每次我尝试重新编译时,# 之后的数字都会发生变化 — 不确定它是否有任何帮助。

更新:

有问题的代码是,

public static <XT, XI> PairSet<XT, XI> newPairSet(Collection<? extends Pair<XT, XI>> ps, boolean compressed) {
if (ps instanceof PairSet)
return (PairSet<XT, XI>) ps;

以及 javac error: inconvertible types with generics? 中建议的修复工作正常——但是 capture#741 是什么意思?

最佳答案

capture#xxx 是泛型类型参数的占位符 ?如果你使用 PairSet<?,?> .我认为您尝试转换为与实际类型参数不兼容的类型参数。

如果您不知道实际的类型参数,您可以转换为 PairSet并稍后转换为 XT 或 XI。

关于java - 在错误消息中捕获#XXX(Java 泛型),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7957374/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com