遊戲開發踩坑大全

  1. linux時編寫shell腳本變量賦值時=號兩邊不能有空格    PACK_NAME=`ls -lt ResourcesLinks/android/resources_links* | head -n 1 | awk '{print $9}'正確     PACK_NAME = `ls -lt ResourcesLinks/android/resources_links* | head -n 1 | awk '{print $9}'錯誤  
  2. 千萬別使用yum -y install java-1.8.0-openjdk*,安裝openjdk,和jdk徹底不一樣,神坑記錄
    1. yum -y install java-1.8.0-openjdk*千萬別下openjdk坑死我了
  3. java8比較器的使用多條件比較,不推薦使用reversed()倒序方法

      1.錯誤使用方法java

      1. 屢次使用reversed()方法時,第2個reversed()會將以前的數據再次顛倒
        List<User> collect = list.stream().sorted(Comparator
                .comparing(User::getScoreA).reversed()
                .thenComparing(User::getScoreB).reversed()
        ).collect(Collectors.toList());

      2.正確使用方法linux

      1. 直接將reversed()放到最後一個條件,前面的排序都將倒序排列
        List<User> collect = list.stream().sorted(Comparator
                .comparing(User::getScoreA)
                .thenComparing(User::getScoreB).reversed()
        ).collect(Collectors.toList());

      3.推薦使用方法android

      1. 若是某些條件正序,某些條件反序,推薦轉換值爲負數進行排序,例如使用負值替換須要reversed()反序排序的條件
        List<User> collect = list.stream().sorted(Comparator
                .comparing(User::getScoreA)
                .thenComparing((User u)->-u.getScoreB())
        ).collect(Collectors.toList());
相關文章
相關標籤/搜索