gpt4 book ai didi

java - 如何在这种通用方法中避免 SuppressWarnings ("unchecked")?

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

我怎样才能去掉这个方法中的@SuppressWarnings("unchecked")?

@SuppressWarnings("unchecked")
public <T> Worker<T> findSimilarWorker(Worker<T> worker) {
// The variable workers is a Set<Worker<?>>
for(Worker<?> w : workers) {
// The following line is unchecked cast
if(w.isSimilar(worker)) return (Worker<T>) w;
}

return null;
}

最佳答案

只要workers被定义为产生 Worker s 类型 ? ,您只是需要类型转换。编译器警告你是正确的,因为 workers可能包含 Worker不同类型的(尽管未显示 workers,但我假设它不是 T 类型)。

(简短版本:你不能,即使有一个 instanceof 检查,它不允许泛型)

关于java - 如何在这种通用方法中避免 SuppressWarnings ("unchecked")?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14936467/

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