使用二维数组的好处是什么?感觉二维数组不够直观,可读性不强。

newcomer1983 2008-07-12 06:44:27
使用二维数组的时候要了解每一维的含义
感觉把结果集放在一个list里面还好

MyObject obj = new MyObject();
for(int i= ;i< list.size();i++){
obj= (MyObject )list.get(i);
String name = obj.getName();
String gender = obj.getGender();
}
感觉比int[i][0]什么的可读性好多了。

请大家所说什么地方用二维数组比较好?
...全文
760 16 打赏 收藏 转发到动态 举报
写回复
用AI写文章
16 条回复
切换为时间正序
请发表友善的回复…
发表回复
rubberhnan2006 2008-07-13
  • 打赏
  • 举报
回复
一般用于牵连到算法东西才用到咯
wensheng_zh2007 2008-07-13
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 sagezk 的回复:]
List容量可动态扩展,元素访问效率较低
[][]容量固定,元素访问效率高,访问元素代码上更简洁

[/Quote]
主要体现在性能的优势。
网络咖啡 2008-07-12
  • 打赏
  • 举报
回复
二维数组在游戏编程中很常用
hmsuccess 2008-07-12
  • 打赏
  • 举报
回复
矩阵相乘可能会用到
sagezk 2008-07-12
  • 打赏
  • 举报
回复
二维不规则三角形数组可以用来做跳棋游戏
sagezk 2008-07-12
  • 打赏
  • 举报
回复
二维不规则三角形数组用来做跳棋也不错
qq278095755 2008-07-12
  • 打赏
  • 举报
回复
矩阵用二维数组表示.例如,你写一个俄罗斯方块游戏,里面的一个一个的下落的物体,就应该用二维数组表示.
还有贪吃蛇,蛇身是用一个一个的小矩形组成的,而矩形使用二维数组表示的.
sagezk 2008-07-12
  • 打赏
  • 举报
回复
List 容量可动态扩展,元素访问效率较低
[][] 容量固定,元素访问效率高,访问元素代码上更简洁
tiannet 2008-07-12
  • 打赏
  • 举报
回复
数组一般用在需要循环输出数据的地方——即数组中所有的数据总是同时输出,
如果你需要取数组中的某一个元素,那么这种情况最好不要用数组。
jishu_vip 2008-07-12
  • 打赏
  • 举报
回复
很少用到二位数组,

现在可以用List 或者是Map去搞定。
cursor_wang 2008-07-12
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 eken56m 的回复:]
如果寫一個像"掃雷"那樣的遊戲,你不覺得二維比較直覺嗎??
[/Quote]

各有各的好处,存在总有它的意义.
free_zdhgp 2008-07-12
  • 打赏
  • 举报
回复
统计分析里的矩阵~~~
  • 打赏
  • 举报
回复
MyObject obj = new MyObject();
for(int i= ;i < list.size();i++){
obj= (MyObject )list.get(i);
String name = obj.getName();
String gender = obj.getGender();
}

这种估计没人会去用二维数组来实现的吧。

二维数组比较适合做一些行列有很强规律的事情,比如楼上提到的扫雷,还有计算行列式什么的。
56m 2008-07-12
  • 打赏
  • 举报
回复
如果寫一個像"掃雷"那樣的遊戲,你不覺得二維比較直覺嗎??
Ant 2008-07-12
  • 打赏
  • 举报
回复
个人认为除了原来用C++写算法的时候有用过二维数组之外
用Java编程,完全面向对象之后就再也没有用过了……如果你想研究数据结构的话,二维数组还是挺有用的
下载方式:https://pan.quark.cn/s/3dc6a8750002 C语言中的二维数组是重要的数据结构,在科学计算、图形处理和数据分析等领域有着广泛应用。在实际应用中,选择合适的二维数组表示方法对于提高程序效率至关重要。 第一种常用的表示方法为普通二维数组。这种表示法通过一个包含多行多列的数组存储元素,例如`int a[3][3] = {{0,1,2},{3,4,5},{6,7,8}};`。这种方法直观易懂,但内存中实际以一维数组形式存储,元素地址连续排列。 第二种表示方法是使用一维数组来模拟二维数组结构。通过将二维数组的全部元素依次存放在一个一维数组中,例如`int b[9] = {0,1,2,3,4,5,6,7,8};`。这种方法可以看作是一种压缩存储方式,但需要特别注意计算各元素在内存中的物理地址。 第三种表示方法是通过指针数组来实现二维数组的结构。将每一行的起始地址存入一个一维指针数组中,例如`int *c[3];`。这种方法允许对每行元素进行独立操作,但在初始化和释放时需特别注意。 第四种表示方法是使用指向指针的变量来模拟二维数组。将二维数组首地址存储在一个指向指针的变量中,例如`int p;`。这种表示法可以看作一种间接引用方式,但初始化和处理过程中同样需要注意细节。 综上所述,C语言中的二维数组可以通过多种方式实现,每种方法都有其适用场景和优缺点。根据具体应用需求选择合适的方法,既能提高程序效率也能增强代码可读性

62,627

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧