0
我有一個可以有多個輪廓和線段的形狀。 我主要儲存如someArray[theContour][theSegment]
的信息。 我想存儲每個段的邊界,這是2d中的4個元素和3d中的6個數組的數組。 所以它會像:bounding[theContour][theSegment][4]
。創建多維陣列的內存效率步驟
目前我只創建所需的零件時GET方法的調用:
public void calculateBounding(int contour, int segment) {
if (boundingContourSegment == null) {
boundingContourSegment = new float[nOfContours][][];
}
if (boundingContourSegment[contour] == null) {
boundingContourSegment[contour] = new float[nOfSegments[contour]][];
}
if (boundingContourSegment[contour][segment] == null) {
boundingContourSegment[contour][segment] = new float[size];
}
我的問題是,這是不好的表現?一次創建整個數組(或者至少是特定輪廓的所有段)是否更好?
對於建模來說不是一個壞習慣嗎?我曾嘗試使用多維數組來建模遊戲以提高性能,但過了一段時間後,由於代碼混亂,我回到了OOP。 – alizelzele