2014-03-19 207 views
0

我正在構建一個應用程序,它將根據日期本身和一些用戶首選項以不同格式顯示日期和時間。最終的結果是有大量的潛在格式。DateTimeFormatter和DateTimeFormatterBuilder成本

這些格式都比較容易在運行時編程打造,但有給每個需要的日期,而不是造就了一批靜態DateTimeFormatter S和引用它們被顯示時使用DateTimeFormatterBuilder建設新DateTimeFormatter任何顯著成本?

+0

如果您每秒處理100,000個日期,或許它已經。如果你正在顯示一個數據庫中查詢數據的表格,也許這並不重要...... –

+0

對不起,但是是通用的響應還是基於我提到的類的知識?我通常認爲這樣做很好,但我特別想知道'DateTimeFormatter'是否有很大的創建時間成本,或者是否有另一個原因,我不應該在飛行中創建它們。 – jgm

+1

僅僅從源代碼中可以看出,即使它涉及很多類(但是如果它滿足您的要求,您可以/應該進行配置),構建時間對於該對象來說可以忽略不計。一般來說(即使它很沉重),如果你不確定它是否是一個衡量的瓶頸,我會考慮微型優化。 –

回答

0

DateTimeFormatter是不可變的,也是線程安全的,所以對緩存實例或將它們存儲在靜態變量中是完全合理的。創建過程不是特別昂貴,但與所有對象分配一樣,在緊密的循環中它可能變得非常昂貴。

相關問題