如何用java写一个交换函数 进行数值的交换 主要就是想知道如何更改实参

AlwayAsk 2003-05-30 02:36:49
我想在java实现一个简单的数值交换函数 即实现两个实参直接的数值交换 说白了也就是想知道如何在函数中更改实参的值
比如
void swap(int a,int b)
{
//这里希望能把a跟b的值呼唤 而且不仅仅是函数内部互换 更系统实参也能跟着互换
}
由于java没有指针 而且本质上所有的参数传递都是值传递 所以想不错如何实现这一功能
当然可以使用数值 但是如果使用数值就失去了这个函数的意义
总不至于每次要交换一次就要创建一个数组 然后在交换后把值赋值给原变量吧 这么做函数封装的目的(便利)就消失了
另外一个问题也是关于实参的改变
StringBuffer提供了append insert等方法这样对函数中的副本调用就可以对实参进行更改(至少是实参所指向的对象的值)
但是对于String Integer等又有没有对应的某个方法来更改呢?
初学java没多久 连这种简单的问题都搞不定 请各位帮帮忙
...全文
523 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
AlwayAsk 2003-05-31
  • 打赏
  • 举报
回复
#$#@
AlwayAsk 2003-05-31
  • 打赏
  • 举报
回复
快来人啊 我现在只是想知道怎么改变一个Integer变量的值
还有String变量的值 这次要求降低 不要在函数中 仅仅使用符合语句
当然要改变实际对象
而不是用一个=号指向另外一个变量了事
AlwayAsk 2003-05-30
  • 打赏
  • 举报
回复
从那个结论里面我看到的意思就是
java中不再可以轻易的对局部的某些值用函数的方式来进行数值的交换是不是?
也就是一旦真的要交换 那么做法只有在类内部添加新的成员变量以及配套的方法或者不用方法 而使用大量的复合语句
这么做是不是太复杂了一点
那么看来当初我认为使用数组比较繁琐的这种看法要改了 数组已经是极好的解决方案了
所以说我想实现的是java不支持的 这么说对吗?
ytdmm 2003-05-30
  • 打赏
  • 举报
回复 1
up,thinkerhj的结论比较详细了。
newman0708 2003-05-30
  • 打赏
  • 举报
回复
看来是个不一般的C++学习者!


thinkerhj(布恩特) 讲的帖子上讲的已经很清楚了。

thinkerhj 2003-05-30
  • 打赏
  • 举报
回复
http://expert.csdn.net/Expert/topic/1760/1760533.xml?temp=.5093195

62,614

社区成员

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

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