最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java GUI實(shí)現(xiàn)加法計(jì)算器

 更新時(shí)間:2021年04月27日 14:25:46   作者:今天不寫代碼  
這篇文章主要為大家詳細(xì)介紹了java GUI實(shí)現(xiàn)加法計(jì)算器,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文實(shí)例為大家分享了java GUI實(shí)現(xiàn)加法計(jì)算器的具體代碼,供大家參考,具體內(nèi)容如下

1.寫出一個(gè)簡(jiǎn)易計(jì)算器需要的組件
2.先出監(jiān)聽事件類

public class TextCalculator01 {
    public static void main(String[] args) {
         new MyCalculator();
    }
}
//計(jì)算器類
class MyCalculator extends Frame{
    public MyCalculator() {
        //三個(gè)文本框
        TextField num1 = new TextField(10);
        TextField num2 = new TextField(10);
        TextField num3 = new TextField(20);
        //一個(gè)等號(hào)
        Button button = new Button("=");
        //實(shí)現(xiàn)鍵盤事件監(jiān)聽
        button.addActionListener(new MyCalculatorListener(num1,num2,num3));
        //一個(gè)標(biāo)簽
        Label label = new Label("+");
        //布局
        setLayout(new FlowLayout());//流式布局
        add(num1);
        add(label);
        add(num2);
        add(button);
        add(num3);
        setVisible(true);
        pack();

    }
}
//監(jiān)聽器類
class MyCalculatorListener implements ActionListener{
    //獲得三個(gè)數(shù)據(jù)
    private TextField num1,num2,num3;
    public MyCalculatorListener(TextField num1,TextField num2,TextField num3) {
        this.num1= num1;
        this.num2 = num2;
        this.num3 = num3;
    }
  @Override
    public void actionPerformed(ActionEvent e) {
        //獲得兩個(gè)加數(shù)
        int n1 = Integer.parseInt(num1.getText());//轉(zhuǎn)換成int類型
        int n2 = Integer.parseInt(num2.getText());
        //前面兩個(gè)數(shù)相加,放入第三個(gè)框中
        num3.setText(""+(n1 + n2));
        //清除前兩個(gè)框的的內(nèi)容
        num1.setText("");
        num2.setText("");
     }
}

按下等號(hào)按鍵,前兩個(gè)框的內(nèi)容會(huì)被清除,第三個(gè)框輸出結(jié)果3

優(yōu)化后的寫法(完全面向?qū)ο螅?/strong>

//簡(jiǎn)易計(jì)算器
public class TextCalculator {
    public static void main(String[] args) {

        new Calculator().loadFrame();
    }
}
 class Calculator extends Frame{
    //屬性,三個(gè)文件框組件
     TextField num1,num2,num3;

     //方法
     public void loadFrame(){
         //需要三個(gè)文件框
         num1 = new TextField(10);
         num2 = new TextField(10);
         num3 = new TextField(20);
         Button button = new Button("=");
         Label label = new Label("+");
         button.addActionListener(new MyCalautor(this));
         //布局
         setLayout(new FlowLayout());//流式布局
         add(num1);
         add(label);
         add(num2);
         add(button);
         add(num3);
         setVisible(true);
         pack();

     }
 }
 //監(jiān)聽事件
 class MyCalautor implements ActionListener{
   //獲得計(jì)算器這個(gè)類,在一個(gè)類中組合另一個(gè)類
     Calculator calculator = null;
     public MyCalautor(Calculator calculator) {

         this.calculator = calculator;
     }
     @Override
     public void actionPerformed(ActionEvent e) {
        //1.獲得前面兩個(gè)數(shù)字
         // 2.把兩個(gè)數(shù)的相加的結(jié)果輸入到第三個(gè)框
         //3.把前兩個(gè)框的內(nèi)容清除
         int n1 = Integer.parseInt(calculator.num1.getText());
         int n2 = Integer.parseInt(calculator.num2.getText());
         calculator.num3.setText(""+(n1+n2));
         calculator.num1.setText("");
         calculator.num2.setText("");

     }
 }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • IDEA快速搭建spring?boot項(xiàng)目教程(Spring?initializr)

    IDEA快速搭建spring?boot項(xiàng)目教程(Spring?initializr)

    這篇文章主要介紹了IDEA快速搭建spring?boot項(xiàng)目教程(Spring?initializr),具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-01-01
  • java中反射(Reflection)機(jī)制舉例詳解

    java中反射(Reflection)機(jī)制舉例詳解

    Java中的反射機(jī)制是指Java程序在運(yùn)行期間可以獲取到一個(gè)對(duì)象的全部信息,這篇文章主要介紹了java中反射(Reflection)機(jī)制的相關(guān)資料,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2025-03-03
  • JavaWeb Maven詳解相關(guān)配置

    JavaWeb Maven詳解相關(guān)配置

    這篇文章主要介紹了使用maven架構(gòu)管理開發(fā)的相關(guān)配置,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2022-06-06
  • Java之單例設(shè)計(jì)模式示例詳解

    Java之單例設(shè)計(jì)模式示例詳解

    這篇文章主要介紹了Java之單例設(shè)計(jì)模式示例詳解,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2020-07-07
  • 解決logback使用${spring.application.name}日志打印路徑的問題

    解決logback使用${spring.application.name}日志打印路徑的問題

    這篇文章主要介紹了解決logback使用${spring.application.name}日志打印路徑的問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2024-06-06
  • Java實(shí)現(xiàn)一個(gè)順序表的完整代碼

    Java實(shí)現(xiàn)一個(gè)順序表的完整代碼

    順序表是用一段物理地址連續(xù)的存儲(chǔ)單元依次存儲(chǔ)數(shù)據(jù)元素的線性結(jié)構(gòu),一般采用數(shù)組存儲(chǔ)。在數(shù)組上完成數(shù)據(jù)的增刪減改。順序表的底層是一個(gè)數(shù)組
    2021-04-04
  • java常用工具類之DES和Base64加密解密類

    java常用工具類之DES和Base64加密解密類

    這篇文章主要介紹了java常用工具類之DES和Base64加密解密類,需要的朋友可以參考下
    2014-07-07
  • 詳解Java排序算法中的冒泡和選擇排序

    詳解Java排序算法中的冒泡和選擇排序

    這篇文章主要給大家介紹了Java排序算法中的冒泡排序和選擇排序,文中有詳細(xì)的圖文解釋和代碼示例,對(duì)我們學(xué)習(xí)Java算法有一定的幫助,感興趣的同學(xué)可以參考閱讀下
    2023-06-06
  • 在zuulFilter中注入bean失敗的解決方案

    在zuulFilter中注入bean失敗的解決方案

    這篇文章主要介紹了在zuulFilter中注入bean失敗的解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • Java Spring中Quartz調(diào)度器詳解及實(shí)例

    Java Spring中Quartz調(diào)度器詳解及實(shí)例

    這篇文章主要介紹了Java Spring中Quartz調(diào)度器詳解及實(shí)例的相關(guān)資料,需要的朋友可以參考下
    2017-02-02

最新評(píng)論

东乌珠穆沁旗| 柳林县| 称多县| 乐安县| 咸宁市| 和林格尔县| 新闻| 东明县| 枣阳市| 日照市| 黄山市| 日照市| 新闻| 西昌市| 福海县| 都江堰市| 资中县| 庆城县| 西丰县| 福海县| 桐柏县| 东乡族自治县| 特克斯县| 浑源县| 平邑县| 阆中市| 桑植县| 拜城县| 建瓯市| 甘孜县| 额济纳旗| 措美县| 松原市| 仁化县| 广饶县| 海原县| 太仆寺旗| 吉隆县| 石首市| 盱眙县| 屏东市|