簡體   English   中英

Smalltalk如何用隨機數填充2d數組?

[英]Smalltalk How to Fill 2d array with random numbers?

在java中,或者C#填充2d數組是可能的,有兩個嵌套for循環,但在smalltalk我似乎無法找到相同的方法。 任何人都可以幫我嗎?

陣列填充

您可以使用Matrix並將其創建為:

| random |
random := Random new.
^ Matrix
   rows: rowNumber
   columns: columnNumber
   tabulate: [ :i :j | random next ]

其中i和j是元素的索引(我在示例中沒有使用)

如果你真的想用2d數組做一些事我建議你做這樣的事情:

| random |
random := Random new.
^ (1 to: rowNumber) collect: [ :i | 
   (1 to: columnNumber) collect: [ :j |
      random next ]

您還可以在創建后遍歷矩陣:

| random matrix |
random := Random new.
matrix := Matrix rows: rowNumber columns: columnNumber.
martix indicesCollect:  [ :i :j | random next ].
^ matrix

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM