做一个窗体应用程序“体重指数计算器”,能根据用户输入的性别、身高、体重计算出“体质指数(身体质量指数)”,并给出是否偏胖的判断。其中,体质指数(BMI) =体重(kg)÷身高^2(m),要求有用户界面组件(如文本框、单选按钮、按钮)、布局和事件处理。

  1. 创建工程并配置环境: 工程名:SE_JAVA_EXP_E04。
  2. 创建包 cn.com.java.experiment。
  3. 在包 cn.com.java.experiment 下创建用户体质类 BMI
    1、性别、身高、体重的 get/set 方法;
    2、BMI 构造方法;
    3、 体质指数的计算 BMICount。
  4. 在包 cn.com.java.experiment 下创建主类:MainClass,为体质指数计算器窗体, 接收用户输入的性别、身高、体重,显示体质指数。

代码:
BMI类

package cn.com.java.experiment;public class BMI {double sex;double height;double weight;double bmi;public double getsex() {return sex;}public void sex(int sex) {this.sex = sex;}public double getheight() {return height;}public void setheight(double height) {this.height = height;}public double getweight() {return weight;}public void setweight(double weight) {this.weight = weight;}public BMI(double sex,double height,double weight) {this.sex = sex;this.height = height;this.weight = weight;}public double bmicount() {bmi=weight/(height*height);return bmi;}
}

Mainclass类

package cn.com.java.experiment;import java.awt.BorderLayout;
import java.awt.EventQueue;import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.border.EmptyBorder;
import javax.swing.JLabel;
import javax.swing.JTextField;
import javax.swing.JButton;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;public class MainClass extends JFrame {private JPanel contentPane;private JTextField textField_sex;private JTextField textField_height;private JTextField textField_weight;private JTextField textField;private JTextField textField_1;/*** Launch the application.*/public static void main(String[] args) {EventQueue.invokeLater(new Runnable() {public void run() {try {MainClass frame = new MainClass();frame.setVisible(true);} catch (Exception e) {e.printStackTrace();}}});}/*** Create the frame.*/public MainClass() {setTitle("\u4F53\u91CD\u6307\u6570\u8BA1\u7B97\u5668");setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);setBounds(100, 100, 450, 300);contentPane = new JPanel();contentPane.setBorder(new EmptyBorder(5, 5, 5, 5));setContentPane(contentPane);contentPane.setLayout(null);JLabel lblNewLabel_sex = new JLabel("\u6027\u522B\uFF08\u7537\u4E3A1\uFF0C\u5973\u4E3A2\uFF09");lblNewLabel_sex.setBounds(30, 35, 160, 18);contentPane.add(lblNewLabel_sex);JLabel lblNewLabel_height = new JLabel("\u8EAB\u9AD8\uFF08m\uFF09");lblNewLabel_height.setBounds(30, 90, 76, 18);contentPane.add(lblNewLabel_height);JLabel lblNewLabel_weight = new JLabel("\u4F53\u91CD\uFF08kg\uFF09");lblNewLabel_weight.setBounds(30, 145, 100, 18);contentPane.add(lblNewLabel_weight);textField_sex = new JTextField();textField_sex.setBounds(30, 60, 86, 24);contentPane.add(textField_sex);textField_sex.setColumns(10);textField_height = new JTextField();textField_height.setBounds(30, 115, 86, 24);contentPane.add(textField_height);textField_height.setColumns(10);textField_weight = new JTextField();textField_weight.setBounds(30, 170, 86, 24);contentPane.add(textField_weight);textField_weight.setColumns(10);JButton btnNewButton = new JButton("\u786E\u8BA4");btnNewButton.addActionListener(new ActionListener() {public void actionPerformed(ActionEvent e) {String a=textField_sex.getText();String b=textField_height.getText();String c=textField_weight.getText();double a1=Double.parseDouble(a);double b1=Double.parseDouble(b);double c1=Double.parseDouble(c);BMI s=new BMI(a1,b1,c1);double bm=s.bmicount();String d="您的体质指数为"+bm;textField.setText(d);if(bm<=18.4) {String e1="您的身材偏瘦,需要加强!";textField_1.setText(e1);}else if(bm<=23.9) {String e2="您的身材正常,注意保持!";textField_1.setText(e2);}else if(bm<=27.9) {String e3="您的身材过重,适当减重!";textField_1.setText(e3);}else {String e4="您的身材太重,注意身体!";textField_1.setText(e4);}}});btnNewButton.setBounds(240, 80, 113, 27);contentPane.add(btnNewButton);textField = new JTextField();textField.setBounds(203, 120, 150, 24);contentPane.add(textField);textField.setColumns(10);textField_1 = new JTextField();textField_1.setBounds(203, 160, 150, 24);contentPane.add(textField_1);textField_1.setColumns(10);}
}

截图:



JAVA——附加作业4——体重指数计算器相关推荐

  1. JAVA——附加作业3——订阅报刊杂志

    实验内容: 以读者订阅报刊杂志为背景,体验多线程生产/订阅模式下的经典应用. 具体业务描述: 本实验以实际生活中报刊杂志的订阅为业务背景.订阅者通常有很多种,他们可以 同时向出版社发出订阅申请: 出版 ...

  2. JAVA——附加作业2——情人节送花

    实验内容:本实验以情人节送花为业务背景,女方提出送花需求,男方送出鲜花, 体验自定义异常以及异常处理机制.当女方提出送花数超过男方可承受范围(例如: 100 朵)时,需要抛出异常. 创建工程并配置环境 ...

  3. JAVA——附加作业1——统计员工数

    实验内容:通过给定的员工列表,显示工号不重复的员工信息. 创建工程并配置环境: 1)工程名:SE_JAVA_EXP_E01. 2)创建包,取名:cn.com.java.experiment. 3)在包 ...

  4. 【中国大学MOOC】java程序设计-week10-做一个窗体应用程序“体重指数计算器”

    1.题目 做一个窗体应用程序"体重指数计算器",能根据用户输入的性别.身高.体重计算出"体质指数(身体质量指数)",并给出是否偏胖的判断.其中,体质指数(BMI ...

  5. java计算器如何实现运算_用java编写了一个模拟计算器的界面设计,怎么实现运算功能呢...

    用java编写了一个模拟计算器的界面设计,怎么实现运算功能呢 2020 - 9 - 16 TAG : view sourceprint?import java.awt.BorderLayout; im ...

  6. java 运费_如何在Java中创建运费成本计算器

    我正在创建计算器来计算运费.代码是这样的:如何在Java中创建运费成本计算器 class ShippingCalc { public static void main(String[] args) { ...

  7. hadoop_单元测试Java Hadoop作业

    hadoop 在我以前的文章中,我展示了如何设置一个完整的基于Maven的项目,以用Java创建Hadoop作业. 当然并没有完成,因为它缺少单元测试部分. 在这篇文章中,我将展示如何将MapRedu ...

  8. 20181127-1附加作业 软件工程原则的应用实例

    20181127-1附加作业 软件工程原则的应用实例 此作业的要求参见:[https://edu.cnblogs.com/campus/nenu/2018fall/homework/2446] 在软件 ...

  9. python编程书籍1020python编程书籍_代写INFT 1020作业、Database作业代做、Java课程作业代写、c++,Python编程作业代做...

    代写INFT 1020作业.Database作业代做.Java课程作业代写.c++,Python编程作业代做 日期:2020-04-25 10:27 INFT 1020 Database Fundam ...

最新文章

  1. ubuntu创建文件夹快捷方式命令
  2. 百度Create2021:百度地图日均位置服务请求次数突破1300亿
  3. java 其他文件转pdf_java 其他文件转成pdf java生成pdf
  4. SAP CRM系统里的附件存储逻辑
  5. LeetCode之Happy Number
  6. Oracle优化之SQL
  7. 安卓应用安全指南 5.3.2 将内部账户添加到账户管理器 规则书
  8. [哀悼]5.12地震后把网站改成灰色的方法
  9. Java中的非对称加密算法RSA实现
  10. 《MYSQL必知必会》—10~13.创建计算字段、使用数据处理函数、使用聚集函数汇总数据,使用GROUP BY与HAVING分组数据及过滤
  11. 15年3月CCF真题2-数字排序
  12. 出差一个多星期,买了个肥皂,把衬衫全部洗了一遍
  13. CMS(内容管理系统)
  14. SCI写作攻略——附带常见英语写作句式
  15. 【PyTorch】SiLU激活函数
  16. 《数学之美》读书笔记
  17. PHP-FPM 性能优化
  18. 如何在Android TV 桌面添加自定义频道/节目
  19. 机器人动力学 拉格朗日乘子法求解动力学方程
  20. 磁盘分区管理工具(DiskGenius Pro 5.3)pjb 附安装教程

热门文章

  1. Python爬虫爬取伯乐在线网站信息
  2. 青龙,XDD-plus,若兰,安装
  3. 国内资深安全专家详谈Trojan-PSW盗号***
  4. 人工智能之Python人脸识别技术--face_recognition模块
  5. 音乐播放器中期总结(类似于qq音乐的歌词显示)
  6. B站【狂神说Java笔记】-注解和反射
  7. 上“天”入“地”,都少不了亚马逊云科技这个云引擎
  8. 真香还是假香,Python处理分析128张Excel表格竟然不到3秒?
  9. Sync BN:Synchronized BN
  10. 星起航:抖音小店体验分高有哪些好处?