簡體   English   中英

在內存和時間方面分配給String變量是否代價高昂?

[英]Is assigning to String variable costly in terms of memory and time?

String timeStamp = currentCommentObjectObj.getTimeStamp();

holder.timeStamp.setText(timeStamp);

要么

holder.timeStamp.setText(currentCommentObjectObj.getTimeStamp());

從時間和空間優化的角度來看哪個更好?

更多信息:-這段代碼在回收站視圖的onBindViewHolder中。

盡管我更喜歡第二種,但我相信沒有區別。 因為在編譯步驟中的某處,編譯器會優化您的代碼,並且會識別出此類差異(如果有)。

有關更多信息,請參考http://www.noesispoint.com/jsp/scjp/SCJPch0.htm

顯然,首先javac (Java編譯器)將代碼編譯為JavaByteCode,然后Java虛擬機的編譯器JIT將Byte代碼優化並編譯為機器語言。

希望能有所幫助。

無論編譯器/ JVM的行為如何,此操作本質上都是瞬時的。

在機器級別,這兩種方法之間唯一可能的區別是

(a)將指針保存到內存,然后加載該指針,或

(b)將指針直接傳遞給下一個方法調用。

兩者之間時間的差異是如此之小,以至於對於任何對象而言,它基本上都將無關緊要。 即使在循環中,Android UI代碼也不應執行足夠的時間,以免發生任何事情。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM