[英]Java storing data
我正在開發一個簡單的水文模型,該模型將包含許多子集水區(最終產品將包含至少10個不同的子集水區)。 每個子集水區用相同的參數描述,但是每個子集水區的參數值不同。
因此,例如,分水嶺A被描述為這些屬性及其對應的值:
Double subA_Impervious = 0.3;
Double subA_Pervious = 0.7;
Double[] subA_CNs = {55.0, 85.0, 92.0};
用相同的屬性描述子集水區B,但具有不同的值:
Double subB_Impervious = 0.4;
Double subB_Pervious = 0.6;
Double[] subB_CNs = {50.0, 70.0, 82.0};
一些屬性是用數組描述的,但大多數只是Double。 每個子流域都有許多屬性描述(示例僅顯示3個,但至少有15種不同的屬性)。
我的問題是,知道我將至少有10個不同的小流域,那么存儲此數據的最佳方法是什么? 這些數據將在主程序中訪問...並輸入到進行各種計算的其他對象中。 我應該創建具有getter / setter方法的泛型類,然后在主程序中實例化10次(每個子盆地1個對象),還是讓某種類為主類創建地圖對象(每個子盆地1個地圖對象)(第二個)方法對我而言最有意義),還是讓一個類存儲所有子盆地的所有參數(主程序中有1個實例化對象)? 不知道如何設置最后一個。
Java是一種面向對象的語言。 創建一個將數據和行為封裝到單個軟件組件中的類。 為您需要的每個實例創建一個。
如果您卡在基元,字符串和集合上,則可能是在錯誤考慮。 思考對象。
如果我要創建一個帶有getter / setter的通用類,然后在主程序中將其實例化10次(每個子子盆1個對象),
不要僅僅使用getter和setter使該對象成為載體。 您能做的最壞的事情是提取數據並進行計算。
最好將這些計算封裝在對象中。 讓它執行它們並要求結果。 更改狀態意味着重做計算。
package model;
public class Watershed {
// better to work with primitives for calculations.
private double impervious;
private double pervious;
private double [] cn; // what's this?
// lots more to add here.
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.