gpt4 book ai didi

java - 类 GenericMemoryCell 中的 GenericMemoryCell 无法应用于给定类型

转载 作者:太空宇宙 更新时间:2023-11-04 12:33:56 24 4
gpt4 key购买 nike

我希望程序打印方法 readA()readB() 的返回值,但我从 main 收到错误,指出由于我的构造函数 GenericMemoryCell()valueB 需要 String,String。但是,如果我需要通过构造函数接收和存储 2 个参数,我是否必须向构造函数发送 2 个参数,如下所示?我怎样才能只将 1 个字符串分配给 valueB

public class GenericMemoryCell<T>{

public static void main(String[] args) {
GenericMemoryCell<String> valueA = new GenericMemoryCell<String>("1", "1");
GenericMemoryCell<String> valueB = new GenericMemoryCell<String>("1");
System.out.println("storedValueA: " + valueA.readA());
System.out.println("storedValueB: " + valueB.readB());
}

public GenericMemoryCell(T storedValueA, T storedValueB)
{ this.storedValueA = storedValueA; this.storedValueB = storedValueB; writeA(storedValueA); writeB(storedValueB); }

public T readA()
{ return storedValueA; }

public T readB()
{ return storedValueB; }

private T storedValueA, storedValueB;
}

最佳答案

如果您想创建传递单个参数的GenericMemoryCell,您需要添加第二个具有单个参数的构造函数。

这是一个单参数构造函数的示例,它只调用两个参数构造函数,为第二个值传递 null:

public GenericMemoryCell(T storedValueA, T storedValueB) {
...
}

public GenericMemoryCell(T storedValueA) {
this(storedValueA, null);
}

关于java - 类 GenericMemoryCell<T> 中的 GenericMemoryCell 无法应用于给定类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37535038/

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