/** * 第1引数に第2引数を連結します.第1引数は破壊的に更新されます(インスタンスの参照を変えません). * * @param targetArray * @param initialArray * @return 第1引数と同じインスタンス */ public static <T> List<T> concatList(List<T> targetArray, List<T> initialArray) { if (targetArray == null) { LogUtils.v(" targetArray is Null. create new one( and return it)."); targetArray = new ArrayList<T>(); } if (initialArray != null) Iterables.addAll(targetArray, initialArray); return targetArray; }
/** * ArrayListインスタンスそのものは変更せず,中身だけをinitialArrayで完全に上書きします. * * @param targetArray * @param initialArray * @return targetArray */ public static <T> ArrayList<T> initArrayListWith( ArrayList<T> targetArray, ArrayList<T> initialArray) { if (targetArray == null) { LogUtils.v(" targetArray is Null. create new one( and return it)."); targetArray = new ArrayList<T>(); } // 同じインスタンスだった場合,前者をclearしてから後者を入れると,けっきょくぜんぶclearされてしまうので. if (targetArray == initialArray) return targetArray; targetArray.clear(); if (initialArray != null) Iterables.addAll(targetArray, initialArray); return targetArray; }
public static void checkDailyAward() { if (UserState.getInstance().isGuest()) { return; } boolean hasAward; try { hasAward = RequestHelper.hasDailyAward(); } catch (ConnectionException | RemoteException | RequestException e) { LogUtils.v(TAG, "check daily award failed", e); return; } if (hasAward) { AppCtx.getEventBus().post(new BusEvent.DailyAwardEvent(true)); } }