[英]Why is my String Variable empty after assigning something to it for a second time?
[英]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.