0

数百ミリ秒ごとに更新を送信するサービスがあります。イベントの説明とともに毎回作成される文字列があります(「経過時間は32秒です」)。残念ながら、イベントによって内容が変わる可能性があり (通常は同じイベント タイプです)、フィードバックがユーザーに返されるため、int だけを使用することはできません。同じ文字列を静的に再利用して、1 分あたり数百の文字列割り当てがないようにする方法はありますか? 同じ変数を再利用したとしても、つまり:

mEventUpdate = "Time elapsed is " + time + " seconds"; 

私はまだ多くの文字列の割り当てが行われているのを見ています。

4

5 に答える 5

2

少なくともString.format()、作成されるオブジェクトの数を減らすために使用できます。

mEventUpdate = String.format("Time elapsed is %d seconds", time); 
于 2013-09-18T11:02:40.047 に答える
1

これをグローバル静的変数として宣言します

public static StringBuilder mEventUpdate = new StringBuilder();

mEventUpdate.delete(0, buffer.length());
mEventUpdate.append("Time elapsed is ");
mEventUpdate.append(time);
mEventUpdate.append(" seconds");

// TO desplay

mEventUpdate.toString();
于 2013-09-18T11:55:50.367 に答える
1

Javaの AStringは不変オブジェクトです。一度作成すると、それ以上変更することはできません。したがって、それが本当に必要な場合Stringは、割り当てを回避する方法はありません。

于 2013-09-18T11:01:25.753 に答える