假设我有这行代码:
Object [] b = {3,new int[]{12,34,34},new int[][]{{1,2},{2,3}}};
我的问题是:
为什么我没有看到程序员使用这样的东西,它有什么问题,java有另一种更好的方法来实现这个吗?
如何获取所有值,包括(数组和矩阵)?
内存如何给出矩阵在数组中的位置?
如果您向我展示一个真实的例子,我将不胜感激。
最佳答案
该片段(原样)是非法的,因为整数数组只能包含整数,而不能包含整数数组。
如果将 b
声明为对象数组,则代码是合法的。您通常不会在程序中看到这样的代码,因为在容器中混合不同类型的对象很少有用(大多数情况下您需要特定类型对象的集合)并且存在潜在危险(您无法使用编译器来保证您不会意外地将一些无意的内容放入数组中)。
如何获取所有值?
您可以使用使用反射或 instanceof
运算符的递归方法来检查当前元素是否为数组。
内存如何给出矩阵在数组中的位置?
Java 没有矩阵,只有包含指向其他数组的指针的数组。
关于java - 另一个数组中的数组有什么缺点?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15456188/