[英]Is there a Parameter Tree implementation in Java?
Java程序需要一長串輸入(參數),攪動一點並吐出一些輸出。
我需要一種合理地組織這些參數的方法,因此在輸入txt文件中,我想這樣寫它們:
parameter1 = 12
parameter2 = 10
strategy1.parameter1 = "goofy"
strategy2.parameter4 = 100.0
然后讀取該txt文件,將其轉換為Java對象,實例化它們時可以傳遞給它們。
我現在pyqtgraph有ParameterTree
,它很容易使用; Java中有類似的東西嗎? 我確信其他人也有同樣的需求,所以我不想重新發明輪子。
(其他樹形結構也可以,當然,我只想簡單易讀)
一種方法是將input.txt
轉換為input.json
:
{
"parameter1": 12,
"parameter2": 10,
"strategy1": {
"parameter1": "goofy"
},
"strategy2": {
"parameter4": 100.0
}
}
然后使用Jackson來將input.json
反序列化為以下之一:
Map<String, Object>
實例,您可以對其進行深入導航以獲取所有參數 input.json
的結構,您的參數將駐留在該結構中 JsonNode
實例,它將是樹的根 (1)的優點是操作簡便,您無需創建任何類即可讀取參數,但是您需要遍歷該地圖,向下轉換從該地圖獲得的值,並且您需要知道預先設置鍵(鍵與json對象的屬性名稱匹配)。
(2)具有在反序列化時可以正確鍵入所有內容的優點; 無需轉換任何內容,因為每種類型都是您自己的類的一個字段,它們代表參數的結構。 但是,如果input.json
文件的結構發生了變化,則還需要更改類的結構。
(3)是所有方法中最靈活的一種,我認為這是最接近您所想的方法,但由於它太低級,因此它是最乏味的處理方法。 請參閱本文以獲取更多詳細信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.