1
Java 8を使用して次のコード(特にpublic void run()メソッド)をラムダに変換するにはどうすればよいですか?匿名の内部メソッドをJavaのラムダに変換する8
しようとしましたpublic class SampleApp {
public static void main(String[] args) {
Thread t1 = new Thread(new Runnable() {
@Override
public void run() {
for (int i = 0; i < 10; i++) {
System.out.println("Hello " + i);
try {
Thread.sleep(100);
}
catch (InterruptedException e) {
e.printStackTrace();
}
}
}
});
t1.start();
}
}
:
Thread t1 = new Thread(new Runnable() -> {
for (int i = 0; i < 10; i++) {
System.out.println("Hello " + i);
try {
Thread.sleep(100);
}
catch (InterruptedException e) {
e.printStackTrace();
}
};
);
しかし、Eclipseがエラーを投げ続ける...
を行うことができます '新しいRunnable'を削除します。 –
ところで:ラムダを使うことができるという理由だけで、それらを使う必要はありません。私はメソッドハンドルを使うほうがはるかに読みやすくなっています。ラムダが2行より長い場合は、一般的には良い考えです。 – eckes