问一个关于java语言的比较特殊的用法

maksim_wei 2005-09-01 08:24:34
有什么方法可以实现象C语言一样获取某数组第n行,第m列的值?学过C的都知道,C语言中允许以下用法:

......
int x = array[i][j];
......

即直接在对象后面跟上[][]即可获取相关位置的值,非常生动,个人认为比array.getValueAt()更加优雅,据我所知,C#语言也支持这种用法,不知道java是否支持,请大牛定性回答,谢谢!
...全文
304 21 打赏 收藏 转发到动态 举报
写回复
用AI写文章
21 条回复
切换为时间正序
请发表友善的回复…
发表回复
maksim_wei 2005-09-06
  • 打赏
  • 举报
回复
“重载操作符”就是我想要的结果,谢谢wangbo1118(编程浪子)。
优雅不优雅的问题我并不同意你的观点,不过我希望再别的贴子中讨论。
joovle 2005-09-05
  • 打赏
  • 举报
回复
说错了,这不是操作符自定义,可以MyClass[][]的
joovle 2005-09-05
  • 打赏
  • 举报
回复
no,java不支持操作符自定义
maksim_wei 2005-09-05
  • 打赏
  • 举报
回复
接前面的

myArray = new MyArrayClass();
...// 初始化
int valueNum = myArray[m][n];

ps: 对于普通的数组如:
int[][] array = new int[m][n];
int valueAtXY = array[x][y];
的用法我当然知道,这个都不知道我哪敢上来问问题呀,呵呵。
maksim_wei 2005-09-05
  • 打赏
  • 举报
回复
可能我表达的意思有误,让大家误会了,我的意思是在自定义的对象实例后面跟[][],例如:
public class MyArrayClass
{
.......
}

......

MyArrayClass myArray
江南编程浪子 2005-09-05
  • 打赏
  • 举报
回复
关于优雅不优雅,这是一个站在什么角度看问题的问题。

C++支持这个特性,给写程序的人带来了很大的方便。

但是却会给读程序的人增加一定的难度(重定义其他的操作符,比如 + - / ...)

这是一个balance的问题,没有哪个更好的答案
江南编程浪子 2005-09-05
  • 打赏
  • 举报
回复
myArray[m][n]在Java里只能是代表
MyArrayClass[][] //两维的MyArrayClass类
中的第m,n个对象
江南编程浪子 2005-09-05
  • 打赏
  • 举报
回复
不可以用myArray[m][n]达到你想要的效果

这是重载操作符,C++支持,Java不支持。

maksim_wei 2005-09-05
  • 打赏
  • 举报
回复
能详细介绍一下吗?比如举个例子,谢谢
LongxiaoZeng2001 2005-09-04
  • 打赏
  • 举报
回复
没意思
interhanchi 2005-09-02
  • 打赏
  • 举报
回复
^_^!
super_zzw 2005-09-02
  • 打赏
  • 举报
回复
faint,我以为什么特殊的东西呢!
梦里饭香 2005-09-02
  • 打赏
  • 举报
回复
呵呵。Java可以这样用的。
好像哥伦布发现新大陆一样。
lancelobb 2005-09-02
  • 打赏
  • 举报
回复
只要支持多维数组的都支持这种“生动”的取值方法
Sundry 2005-09-01
  • 打赏
  • 举报
回复
94,learning by doing。

可以的。
humanity 2005-09-01
  • 打赏
  • 举报
回复
array.getValueAt() 是哪个类的 方法,怎么没有见过?

二维数组大伙都支持,Java 也不例外。

Java 还可以这样 java.lang.reflect.Array.get(varArray,5); 取 varArray 的第6个元素。
rainly1985 2005-09-01
  • 打赏
  • 举报
回复
难道楼主这样用有问题吗,肯定可以呀
shenpipi 2005-09-01
  • 打赏
  • 举报
回复
难道楼主一直用array.getValueAt()?
believefym 2005-09-01
  • 打赏
  • 举报
回复
这种数组的基本操作我看一般的语言都支持的吧
homesos 2005-09-01
  • 打赏
  • 举报
回复
应该是可以的
自己试下不就知道了吗
加载更多回复(1)

62,615

社区成员

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

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