android Arrays.fill()的使用
今天,簡單講講android Arrays.fill()的簡單使用。
在 API 中所有的 fill 方法如下:
static void fill(boolean[] a, boolean val) 將指定的 boolean 值分配給指定 boolean 型數組的每個元素。 static void fill(boolean[] a, int fromIndex, int toIndex, boolean val) 將指定的 boolean 值分配給指定 boolean 型數組指定范圍中的每個元素。 static void fill(byte[] a, byte val) 將指定的 byte 值分配給指定 byte 節型數組的每個元素。 static void fill(byte[] a, int fromIndex, int toIndex, byte val) 將指定的 byte 值分配給指定 byte 型數組指定范圍中的每個元素。 static void fill(char[] a, char val) 將指定的 char 值分配給指定 char 型數組的每個元素。 static void fill(char[] a, int fromIndex, int toIndex, char val) 將指定的 char 值分配給指定 char 型數組指定范圍中的每個元素。 static void fill(double[] a, double val) 將指定的 double 值分配給指定 double 型數組的每個元素。 static void fill(double[] a, int fromIndex, int toIndex, double val) 將指定的 double 值分配給指定 double 型數組指定范圍中的每個元素。 static void fill(float[] a, float val) 將指定的 float 值分配給指定 float 型數組的每個元素。 static void fill(float[] a, int fromIndex, int toIndex, float val) 將指定的 float 值分配給指定 float 型數組指定范圍中的每個元素。 static void fill(int[] a, int val) 將指定的 int 值分配給指定 int 型數組的每個元素。 static void fill(int[] a, int fromIndex, int toIndex, int val) 將指定的 int 值分配給指定 int 型數組指定范圍中的每個元素。 static void fill(long[] a, int fromIndex, int toIndex, long val) 將指定的 long 值分配給指定 long 型數組指定范圍中的每個元素。 static void fill(long[] a, long val) 將指定的 long 值分配給指定 long 型數組的每個元素。 static void fill(Object[] a, int fromIndex, int toIndex, Object val) 將指定的 Object 引用分配給指定 Object 數組指定范圍中的每個元素。 static void fill(Object[] a, Object val) 將指定的 Object 引用分配給指定 Object 數組的每個元素。 static void fill(short[] a, int fromIndex, int toIndex, short val) 將指定的 short 值分配給指定 short 型數組指定范圍中的每個元素。 static void fill(short[] a, short val) 將指定的 short 值分配給指定 short 型數組的每個元素。
現在寫個簡單的示例。
Java.util.Arrays.fill()? 一個填充數組的方法:
例:有五個班級,每個班級有40個人,用 60 ~ 160 之間的數值來填充這些學生的體重。????float[][]?weight?=?new?float[5][40];
????for(int?i?=?0;?i?<?weight.length;?i++)?{
??????for(int?j?=?0;?j?<?weight[i].length;?j++)?{
????????java.util.Arrays.fill(weight[i],(float)(100*Math.random()?+?60));
??????}
????}
開始時把它寫成了
???float[][]?weight?=?new?float[5][40];
????for(int?i?=?0;?i?<?weight.length;?i++)?{
??????for(int?j?=?0;?j?<?weight[i].length;?j++)?{
????????java.util.Arrays.fill(weight[i][j],(float)(100*Math.random()?+?60));
??????}
????}
??????Float[]?weight?=?new?float[10];
??????java.util.Arrays.fill(?weight,?(float)(100*Math.random()?+?60));
其實只是以一個用 (float)(100*Math.random() + 60) 產生的隨機值填充了整個數組,即 weight[0] = weight[1] = weight[2] = weight[3] = …… = weight[9] = 同一個值,而非我所想要的數組中每個項都以一個隨機值填充,所以最后還是改用了最原始也是最有效的方法:
???float[][]?weight=?new?float[4][20];
????for(int?i=0;?i<weight.length;?i++)?{
??????for(int?j=0;?j<weight[i].length;?j++)?{
//???????Arrays.fill(weight[i],(float)(100*(Math.random()+1)));
????????weight[i][j]?=?(float)(100*(Math.random()+1));
??????}
????}
最后得出結論:java.util.Arrays.fill() 方法只適合于把數組用同一個值初始化。
另外,還可以只對部分數據賦值Arrays.fill(array[] arr,int startIndex?, int endIndex, int value);
第一個參數指操作的數組,第二個和第三個指在該數組的某個區域插入第四個參數,第二個參數指起始元素下標(包含該下標),第三個參數指結束下標(不包含該下標),注意:java的數組下標從0開始
比如將數組的第2和第3個元素賦值為8:Arrays.fill(array, 2, 4, 8):
android Arrays.fill()的使用就講完了。
就這么簡單。
總結
以上是生活随笔為你收集整理的android Arrays.fill()的使用的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: android ConcurrentHa
- 下一篇: android Collections.