作者TonyQ (骨頭)
看板java
標題Re: [問題] double陣列
時間Sun Apr 1 13:02:55 2007
※ 引述《sorryla (Mr.東)》之銘言:
: double cc[]=new double[n];
: //a b兩個都是數值random的方陣
: //c為存放結果的方陣
:
: 我想請問一下
: 為甚麼這樣跑到最後
: c[i]全部都會變成最後一個運算完的cc
: 也就是c矩陣的每一列都會變成最後被運算出來的a[n-1][k]*b[n-1][k]
:
: 感謝不盡><
:
: --
: ※ 發信站: 批踢踢實業坊(ptt.cc)
: ◆ From: 220.136.183.226
: → windf4:c[i]=cc 意思是指派cc的位址給c[i]哦 04/01 12:14
應該要說是把c[i]的ref指向 cc ,
讀取c[i] 就等同於cc當時所指向的目標。
call by ref
: → sorryla:所以他不是複製....謝謝大大 04/01 12:33
: → sorryla:那請問大大有沒有METHOD可以直接整個陣列複製過去? 04/01 12:41
使用 clone() 可以達到這個目的。
環境是 JDK 1.5
我不是很確定如果是1.4.2的話clone()要不要轉型, :(
要的話就把cc.clone()轉型成 double[]就行了。
double cc[]={0,0,0,0,0};
double[] copy_cc=cc.clone();
cc[0]=1;
System.out.println(copy_cc[0]);
另外一點意見,雖然今天ptt開放推文,但是文章既然轉信出去了,
就請不要用站內推文討論問題,這對站外使用者不禮貌。:)
--
String temp="relax"; | Life just like programing
while(buringlife) String.forgot(temp); | to be right or wrong
while(sleeping) brain.setMemoryOut(); | need not to say
stack.push(life.running); | the compiler will
stack.push(scouting.buck()); | answer your life
stack.push(bowling.practice()); | Bone
everything
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.134.27.68
→ windf4:感謝提醒, 是我腦殘以為是在c版, 習慣性就用推的 orz 04/01 13:18
推 chrisho:可以問一下j2me有clone嗎....@@ 04/01 15:01
推 PsMonkey:J2ME 有沒有 clone,你應該要去問獨眼龍... 我是說 API 04/01 15:03
推 chrisho:j2se用的很快樂,不過j2me是斷手斷腳的...so... 04/01 15:27