不帶參數
new Thread(new Runnable(){// 接口名
@Override
public void run(){// 方法名
System.out.println("Thread run()");
}
}).start();
// JDK8 Lambda表達式寫法
new Thread( () -> System.out.println("Thread run()")// 省略接口名和方名 ).start();
帶參數
// JDK7 匿名內部類寫法
List<String> list = Arrays.asList("I", "love", "you", "too");
Collections.sort(list, new Comparator<String>(){
// 接口名
@Override
public int compare(String s1, String s2){// 方法名
if(s1 == null)
return -1;
if(s2 == null)
return 1;
return s1.length()-s2.length();
}
});
// JDK8 Lambda表達式寫法
List<String> list = Arrays.asList("I", "love", "you", "too");
Collections.sort(list, (s1, s2) ->{
// 省略參數表的類型
if(s1 == null)
return -1;
if(s2 == null)
return 1;
return s1.length()-s2.length();
});