2

人.java

package com.example.android.cardview.HackerRank;

/**
* Created by Chhiring on 10/5/2017.
*/

public class Person {
   private String mFirstName;
   private String mLastNme;

   public Person() {
   }

   public Person(String mFirstName, String mLastNme) {
       this.mFirstName = mFirstName;
       this.mLastNme = mLastNme;
   }

   public String getmFirstName() {
       return mFirstName;
   }

   public void setmFirstName(String mFirstName) {
       this.mFirstName = mFirstName;
   }

   public String getmLastNme() {
       return mLastNme;
   }

   public void setmLastNme(String mLastNme) {
       this.mLastNme = mLastNme;
   }
}

LambdaExpressionExample.java

package com.example.android.cardview.HackerRank;

import java.util.ArrayList;
import java.util.Collections;
import java.util.List;

/**
* Created by Chhiring on 10/9/2017.
*/
public class LambdaExpressionExample {
   public static void main(String[] args) {

       List<Person> myList = new ArrayList<>();

       myList.add(new Person("Chhiring", "Gurung"));
       myList.add(new Person("Jon", "Skeet"));
       myList.add(new Person("Joseph", "Rooney"));
       myList.add(new Person("Jack","Johnson"));

       System.out.println("Sort Based on first name");
       Collections.sort(myList, (o1, o2) -> o1.getmFirstName().compareTo(o2.getmFirstName()));
       for(Person p:myList){
           System.out.println(p.getmFirstName()+" "+p.getmLastNme());
       }

       System.out.println("\nSort Based on last name");
       Collections.sort(myList, (o1, o2) -> o1.getmLastNme().compareTo(o2.getmLastNme()));
       for(Person p:myList){
           System.out.println(p.getmFirstName()+" "+p.getmLastNme());
       }
   }
}

无论何时,我将 new Person 放在列表中并运行LambdaExpressionExample.java,但它仍然没有给我更新的结果。代码是 100% 正确的。我正在使用安卓工作室。我使用 Jack 是因为我使用 Java 1.8 作为 lambda 表达式。这是我的build.gradle文件

android {

defaultConfig /* is a com.android.build.gradle.internal.dsl.ProductFlavor  */ {
   minSdkVersion 11
   targetSdkVersion 25

   jackOptions {
       enabled true
   }
}

compileOptions /* is a com.android.build.gradle.internal.CompileOptions */ {
   sourceCompatibility JavaVersion.VERSION_1_8
   targetCompatibility JavaVersion.VERSION_1_8
}
}

但是,当我重建并运行时,我看到了更新的结果。为什么是这样?

4

0 回答 0