java函数式编程

来源:互联网 发布:linux内网穿透知乎 编辑:程序博客网 时间:2024/06/05 01:58

java是一门面向对象的语言;函数式编程;并行开发/基于事件的开发;


import java.util.Arrays;
import java.util.Comparator;


public class LambdaTest1 {

class User{
public String name;
public int score;

public User(String name, int score) {
super();
this.name = name;
this.score = score;
}


@Override
public String toString() {
return "User [name=" + name + ", score=" + score + "]";
}
}


public void testOldUse(){
User[] us = new User[]{
new User("李白",90),
new User("杜甫",86),
new User("孟浩然",76)
};
Arrays.sort(us,new Comparator<User>(){


@Override
public int compare(User o1, User o2) {
return Integer.compare(o1.score,o2.score);
}
});
System.out.println(Arrays.toString(us));
}

public void testOldUser2(){
new Thread(new Runnable(){


@Override
public void run() {
System.out.println("hello lambda");
}

}).start();
}

public void testNewUse(){
User[] us = new User[]{
new User("李白",90),
new User("杜甫",86),
new User("孟浩然",76)
};
Arrays.sort(us,
(User o1, User o2) -> {
return Integer.compare(o1.score,o2.score);
}
);
System.out.println(Arrays.toString(us));
}

}

原创粉丝点击