[問題] 請問TextView能一次顯示多個結果嗎?

作者: MAXQb   2020-06-08 23:58:41
就是希望有1~100裡取5個隨機的數字
public void button(View view) {
TextView textView=findViewById(R.id.textView);
for(int n,i=1;i<=5;i++){
n=(int)Math.random()100)+1
textView.setText(n+"");
}
}
但最後textView.setText(n+"");只會顯示出5個裡最後一個數字
有什麼辦法可以讓textView顯示全部5個數字嗎?
另外數字想要不重複的話該怎麼寫比較好??
感謝。
作者: rin841005 (Rinex)   2020-06-09 00:35:00
你可以先加在字串上最後在setText
作者: asadman1523 (黑炭)   2020-06-09 01:58:00
n= 改成n+=
作者: kevin31a2 (3等士官長 士兵督導長)   2020-06-09 06:17:00
這看起來向回家作業…
作者: aiweisen (艾維森)   2020-06-09 07:05:00
數字要不重複 比對list內是否有相同值 已經有值就重新取值然後你可以用Stringbuilder append你的字串
作者: zcbxvsdf (東北一頭羊)   2020-06-09 18:07:00
你每次setText都是設定,只會覆蓋原本內容如何顯示5次的結果,你先自己思考看看思考方向對了,但是不用用到陣列,而是使用字串相加1+1=2,"1"+"1"="11",我只能幫到這了
作者: kobe8112 (小B)   2020-06-10 00:58:00
google關鍵字有一大堆部落格範例說明,看過了嗎?字串處理、字串相加....或直接打英文也可以,建議初學要先練習找出關鍵字&看logcat,很有幫助的
作者: evo1994 (Evo)   2020-06-10 02:28:00
最簡方法 setText改成append
作者: ou9810 ( )   2020-06-10 11:50:00
寫程式不是短就是好,比較好的做法是先在迴圈裡串好字串出迴圈再用setText,這樣系統就不會一直重繪浪費效能這樣你也比較好debug
作者: panjiongkai (想念放在心裡)   2020-06-10 13:48:00
每個值要分開 就在append的時候多塞一個分隔符號或是空白之類的字元
作者: chenx5 (ccchaha)   2020-06-10 16:48:00
在回圈外層的上面定一個變數字串,在回圈內將字串+=n,最後在回圈外的下面再把字串顯示就好,這樣試試
作者: ou9810 ( )   2020-06-11 10:14:00
初學的話還是要學一下基本語法,還有語言特性不然你寫完也是不懂為什麼結果是這樣
作者: daniel098962 (阿河)   2020-06-12 00:50:00
你這問題代表你一些基本的特性很不了解喔~每按一次就要把原本的字串給清空 否則你每多按一次就又加五筆數字串進去或是每次要顯示的字串都在那個function裡重新宣告不要把變數存成全域

Links booklink

Contact Us: admin [ a t ] ucptt.com