declare some key vars final to help the compiler optimize those

Apparently, the Java compiler can in some cases reuse a final value instead
of executing a method again.  This is from @hotlittlewhitedog

!653
This commit is contained in:
Hans-Christoph Steiner 2018-04-03 23:59:50 +02:00
parent fa9a4ce608
commit 48e438d510
3 changed files with 8 additions and 5 deletions

View File

@ -219,12 +219,13 @@ public class App extends ValueObject implements Comparable<App>, Parcelable {
public App() {
}
public App(Cursor cursor) {
public App(final Cursor cursor) {
checkCursorPosition(cursor);
for (int i = 0; i < cursor.getColumnCount(); i++) {
String n = cursor.getColumnName(i);
final int cursorColumnCount = cursor.getColumnCount();
for (int i = 0; i < cursorColumnCount; i++) {
final String n = cursor.getColumnName(i);
switch (n) {
case Cols.ROW_ID:
id = cursor.getLong(i);

View File

@ -34,7 +34,8 @@ class AppListAdapter extends RecyclerView.Adapter<StandardAppListItemController>
@Override
public void onBindViewHolder(StandardAppListItemController holder, int position) {
cursor.moveToPosition(position);
holder.bindModel(new App(cursor));
final App app = new App(cursor);
holder.bindModel(app);
}
@Override

View File

@ -80,7 +80,8 @@ public class WhatsNewAdapter extends RecyclerView.Adapter<AppCardController> {
@Override
public void onBindViewHolder(AppCardController holder, int position) {
cursor.moveToPosition(position);
holder.bindApp(new App(cursor));
final App app = new App(cursor);
holder.bindApp(app);
}
@Override