float[][] pesIAlcada = {
{ 2.4f, 3.1f, 3.07f, 3.7f, 2.7f, 2.9f, 3.2f, 3f, 3.6f, 3.1f },
{ 19f, 18.7f, 22f, 24f, 17f, 18.5f, 21f, 20f, 18.7f, 22f, 18f },
{ 47f, 48f, 49f, 50f, 51f, 52f, 51.5f, 50.5f, 49.5f, 49.1f, 50f },
{ 101f, 104f, 106f, 107f, 107.5f, 108f, 109f, 110f, 112f, 103f } };
/*
* I already created an array. And I want to make a new one but some
* infomation from the old array. How can I do, plz?
*/
float[][] pesNeixement = new float[ROWS][COLS];
for (int i = 0; i < 2; i++) {
for (int j = 0; j < pesIAlcada[i].length; j++) {
System.out.print(pesIAlcada[i][j]);
}
}
回答
它取決於您對「某些信息」的定義。如果要將數組的一部分複製到新數組中,則可以使用System.arraycopy。
例
int[] numbers = {4,5,6,7,8};
int[] newNumbers = new int[10];
System.arraycopy(numbers,0,newNumbers,0,3);
我想做一個新的數組稱爲pesNeixement和對於新陣列(pesNeixement)只需要這兩行 {{2.4f,3.1f,3.07f,3.7f,2.7f,2.9f,3.2f,3f,3.6f,3.1f},{ 19f,18.7f,22f,24f,17f,18.5f,21f,20f,18.7f,22f,18f}, – 2013-05-12 10:31:26
因此,運用一些推理,看看你給出的答案,並計算出如何得到最高兩條線。 – christopher 2013-05-12 10:32:51
是的,我在這裏做 float [] [] [] [] pesNeixement = new float [ROWS] [COLS];對於(int j = 0; j
使用此功能深複製的2D陣列。
public static float[][] deepCopy(float[][] original, Integer offset, Integer numberOfRows) {
if (original == null) {
return null;
}
if (offset == null) {
offset = 0;
};
if (numberOfRows == null) {
numberOfRows = original.length;
};
final float[][] result = new float[numberOfRows - offset][];
for (int i = offset; i < numberOfRows; i++) {
result[i] = Arrays.copyOf(original[i], original[i].length);
}
return result;
}
並在代碼:
float[][] pesNeixement = deepCopy(pesIAlcada, 0, 2);
我想創建一個新的數組,稱爲pesNeixement 並且只爲這個新數組(pesNeixement)使用這兩行.. {{2.4f,3.1f,3.07f,3.7f,2.7f,2.9f,3.2 f,3f,3.6f,3.1f}, {19f,18.7f,22f,24f,17f,18.5f,21f,20f,18.7f,22f,18f}, – 2013-05-12 10:28:57
不錯的,upvoted .. :) – ridoy 2013-05-12 10:40:20
You可能需要添加一個額外的'offset'參數,以防某人想要複製* x *行從行* y *開始。 – gkalpak 2013-05-12 10:46:48
如果你希望將一些行從pesIAlcada
在一個新的數組(pesNeixement
),你可以使用這樣的複製:
int fromRow = 0; // Start copying at row0 (1st row)
int toRow = 2; // Copy until row2 (3rd row) <- not included
// This will copy rows 0 and 1 (first two rows)
float[][] pesNeixement = new float[toRow - fromRow][];
for (int i = fromRow; i < toRow; i++) {
pesNeixement[i] = new float[pesIAlcada[i].length];
System.arraycopy(pesIAlcada[i], 0, pesNeixement[i], 0, pesIAlcada[i].length);
}
而且看到這個short demo。
System.arrayCopy()
是從現有數組中創建新數組的有效方法。你也可以用你自己的編碼來完成。只是探索
- 1. 從兩個數組創建新數組;
- 2. 如何從一組數據中創建一個數組/矩陣
- 3. PHP從數組中創建一個新的類型的數組
- 4. 從現有的數組中創建一個新的數組php
- 5. 如何從JavaScript數組中創建一個簡單的數組?
- 6. 從一個數組中創建一個「樹型數組」php
- 7. 如何從另一個php數組創建php哈希數組?
- 8. 如何從php數組創建一個java腳本數組?
- 9. 在Clojurescript中創建一個新數組
- 10. 如何使用舊數組的一部分在java中創建一個新數組?
- 11. 如何從數組數據中創建一個url參數?
- 12. 如何從數組中創建1元素數組的數組?
- 13. 過濾一個數組並創建一個新數組
- 14. Perl數據結構:如何從一個數組創建一個數組引用
- 15. 從2個數組中創建新的數組在PHP
- 16. 如何創建一個數組到另一個數組?
- 17. 從多個多維數組中創建一個數組php
- 18. 從python中的一個數組創建2個數組
- 19. 如何從一個函數創建一個Haskell數組
- 20. 從一個整數創建numpy數組
- 21. 從數據數組創建一個Optgroup
- 22. 從數組創建數組
- 23. 如何從<array>頭創建一個新的C++數組?
- 24. 如何從浮點數組創建一個新的QImage
- 25. 如何從數組中創建下一個和前一個
- 26. 如何在Perl中創建一個動態數組數組?
- 27. 如何在C中創建一個struct數組的數組?
- 28. 如何在C++中創建一個隨機數組的數組
- 29. 如何在Javascript中創建一個數組數組?
- 30. 如何在matlab中創建一個空數組的數組?
我建議你避免使用'浮動'不僅使這樣的例子更復雜,但它有更少的精度(這是十億倍的準確性) – 2013-05-12 10:52:34