簡體   English   中英

如何使用范圍內的隨機字母值填充二維數組

[英]how to populate a 2d array with random alphabetic values from a range

我是Java編程的新手,我想創建兩個方法:方法1會生成2d數組5 * 5並在AE方法2之間填充值,方法2只會將結果打印到屏幕上,我了解迭代過程數組使用兩個for循環並一次性打印,但將其拆分讓我有些困惑。 到目前為止,這是我的第一種方法

       public void create()
         {
              Random r = new Random();  
              char Type[] = {'a','c','e','d'};

             for (int i = 0; i<seats.length; i++)
             {
                 for (int j = 0; j<seats[i].length; j++)
                {
                    seats[i][j] = Type[r.nextInt(Type.length)];
                }
            }

         }

首先,您需要在方法外部創建數組。 我建議使用一個全局變量,以避免值傳遞內存效率低下的問題。

 import java.util.Random;
 public class alpha_array
 {
     char array[][] = new char[5][5];
     Random rnd = new Random();

     public static void main(String[]args)
     {
         populate_array();
         print_array();
     }
 }

接下來,您將需要兩個功能。 對於數組的填充,不要忘記在代碼頂部導入util:

populate_array():

public void populate_array()
{
    for(int i = 0; i < 5; i++)
    {
        for(int j = 0; j < 5; j++)
        {
            int x = rnd.nextInt(5); //0 to 4
            switch(x){
                case 0:{
                    array[i][j] = 'a';
                    break;
                }
                case 1:{
                    array[i][j] = 'b';
                    break;
                }
                case 2:{
                    array[i][j] = 'c';
                    break;
                }
                ...ETC
            }
        }
    }
}

最后,只為print_array方法模仿相同的結構,只不過使用:

System.out.print(array[i][j]);

每行。 希望這可以幫助。

暫無
暫無

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

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