java如何创建包含不同数据类型的二维数组
我的目标是有这样一个数组:{{Object,int},{Object,int},其中整数表示前面指示的对象有多少个的计数。 我已经研究了java泛型,但我似乎无法正确理解它。 到目前为止,我所拥有的:
class AmmoRack < E extends Bullet, N > {
AmmoRack<Bullet, Integer>[][] ammo;
public AmmoRack() {
this( {new Bullet(Bullet.AP), 50});// Bullet.AP is an int, public Bullet(int type){...}
}
public AmmoRack(AmmoRack<Bullet, Integer>[][] ammo) {
this.ammo = ammo;
}
}
我已经研究了其他问题,但它们似乎对我的案例没有特别的帮助
# 1 楼答案
不能用两种不同的类型定义数组。bullet对象是bullet类型,50是整数类型。但是,所有类都扩展了对象类
如果您这样编写代码:
发生编译时错误,编译器说新的Bullet(n)应该是int类型。因为你定义了一个数组! 还有物体[]弹药;这是错误的。同样的错误也会发生。除非你认为一个项目符号是一个数字,并在你的项目符号类中定义它,这是不合逻辑的