You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

为何无法使用泛型进行类型转换?泛型赋值报错求助

泛型类型不匹配问题解决

你遇到的问题核心是Test类里的字段没有正确使用泛型参数。你的Test类中,link和data字段定义的是原始类型Test,而非泛型参数E——这就导致即便你实例化时指定了Test<String>,hello.data的类型依然是Test,不是String,把String类型的值赋值给它自然会触发类型转换错误。

修正后的Test类代码如下:

public class Test<E> {
    Test<E> link; // 用泛型参数E限定link的类型
    E data;       // 直接将泛型参数E作为data的类型
}

修改后,当你创建Test<String>实例时,data字段的类型会自动推断为String,此时你的TestProgram代码不需要改动,就能正常完成赋值和打印操作,输出hello。

内容的提问来源于stack exchange,提问作者Courtney Parks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.23 06:03:18