Lambda のことをいろいろ軽く調べてきました。
Swing を使った GUI アプリでも Lambda は重宝されそうですね。
それでは Lambda を使った簡単な Swing アプリを作ってみました。
| jp\yucchi\Swing_Lambda_1.java |
package jp.yucchi;
import javax.swing.JOptionPane;
public class Swing_Lambda_1 extends javax.swing.JFrame {
public Swing_Lambda_1() {
initComponents();
}
@SuppressWarnings("unchecked")
private void initComponents() {
jButton1 = new javax.swing.JButton();
setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
jButton1.setText("押してみて!");
jButton1.addActionListener(e -> {
JOptionPane.showMessageDialog(null, "こんにちわ~ (^_^)v");
});
getContentPane().add(jButton1, java.awt.BorderLayout.CENTER);
pack();
setLocationRelativeTo(null);
}
public static void main(String args[]) {
java.awt.EventQueue.invokeLater(() -> {
new Swing_Lambda_1().setVisible(true);
});
}
private javax.swing.JButton jButton1;
}
これまでのコードと違う部分が2カ所ありますね。
Lambda を使うと無名クラスの生成記述を省略できてしまうんですね~(^_-)-☆
それでは本当にこれで動くのか確認してみます。
おおっ!動いてますね(^_^)v
Lambda を使った難しいことは解りませんがこんな簡単で便利なことは好きです!
少しずつ Lambda に慣れて JDK 8 を楽しめるようになれるといいなと思う今日この頃です。