Re: [承上面]67個if的美學果然不適合小弟...
※ 引述《JazzChen (PhoenixJazz)》之銘言:
: 小弟在前一篇發表了67個if
: 一時之間成了版標...太令小弟震驚了!
: 不過小弟不是個"勤能補拙"的人,無法好好地寫完67個if
: 最後綜合了各家說法以及小弟個人(翻書)的見解,
: 在此放上小弟腦力激盪後的寫法
: 請各位大大賜教!希望能夠再增進JAVA的功力!
: 默默附上:
: //random number
: int[] D = new int[4];
: D[0] = (int) (Math.random()*10);
: do{
: D[1]=(int) (Math.random()*10);
: } while(D[0] == D[1]);
: do{
: D[2]=(int) (Math.random()*10);
: } while(D[0] == D[2] || D[1] == D[2]);
: do{
: D[3]=(int) (Math.random()*10);
: } while(D[0] == D[3] || D[1] == D[3] || D[2] == D[3]);
因為陣列大小固定,而且陣列不大
所以我個人的習慣寫法如下
判斷方式為:0和0、1、2、3比;1和0、1、2、3比,依此類推
雖然看起來略有差異,但其實做的事情是一樣的,
所以可以用一個迴圈把判斷式包起來
不過這中間有個地方會有問題就是,int陣列預設值為0
雖然沒什麼技術性,但是相當直覺
可能會出問題的地方也有點出來了,就僅供參考吧XD
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 120.126.66.40
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 8 篇):