1、类图

2、代码

Triangle类:
package triangleDemo;
public class Triangle{public String triangle(int a,int b,int c){String result;if ((a>=1&&a<=100)&&(b>=1&&b<=100)&&(c>=1&&c<=100)) {if ((a+b>c)&&(a+c>b)&&(b+c>a)) {if (a*a+b*b==c*c||a*a+c*c==b*b||b*b+c*c==a*a) {result="直角三角形.";} else if (a==b&&b==c&&a==c) {result="等边三角形.";} else if (a==b||a==c||b==c) {result="等腰三角形.";} else {result="一般三角形.";}} else {result="不能构成三角形.";}} else {result="边的值不在范围内!";}return result;}public boolean Validation(String[] value){if(value.length<3){//没有三个数据return false;}try {for(int i=0;i<3;i++){int b = Integer.valueOf(value[i]).intValue();}} catch (NumberFormatException e){//不能转换成整型return false;}return true;}public int perimeter(int a,int b,int c){return a+b+c;}public float triangleArea(int a,int b,int c){float s = (float) (0.5*perimeter( a, b, c));return (float) Math.sqrt((s*(s-a)*(s-b)*(s-c)));}
}

frame类:

package triangleDemo;import java.awt.EventQueue;
import java.awt.Font;
import java.awt.Toolkit;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JTextField;import triangleDemo.Triangle;public class DisTriangle{private JFrame frame;private final JLabel label = new JLabel("请输入三角形的三条边:");private final JLabel lblA = new JLabel("a:");private final JLabel lblB = new JLabel("b:");private final JLabel lblC = new JLabel("c:");private final JLabel result_1 = new JLabel("这个三角形是:");private final JLabel result_2 = new JLabel("面积是:       周长是:");private final JTextField lengthOfa = new JTextField();private final JTextField lengthOfb = new JTextField();private final JTextField lengthOfc = new JTextField();private final JButton calculate = new JButton("确定");private final JButton clean = new JButton("清空");private Triangle tri;/*** Launch the application.*/public static void main(String[] args) {EventQueue.invokeLater(new Runnable() {public void run() {try {new DisTriangle();} catch (Exception e) {e.printStackTrace();}}});}/*** Create the frame.* @wbp.parser.entryPoint*/public DisTriangle() {frame = new JFrame("三角形计算程序");frame.setBounds((Toolkit.getDefaultToolkit().getScreenSize().width/2)-256, (Toolkit.getDefaultToolkit().getScreenSize().height/2)-192, 450, 360);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.getContentPane().setLayout(null);frame.setVisible(true);frame.setResizable(false);label.setFont(new Font("宋体", Font.PLAIN, 16));label.setBounds(24, 10, 350, 30);frame.getContentPane().add(label);result_1.setFont(new Font("宋体", Font.PLAIN, 16));result_1.setBounds(24, 192, 350, 30);frame.getContentPane().add(result_1);result_2.setFont(new Font("宋体", Font.PLAIN, 16));result_2.setBounds(24, 254, 350, 30);frame.getContentPane().add(result_2);lblA.setFont(new Font("宋体", Font.PLAIN, 16));lblA.setBounds(60, 70, 30, 15);lblB.setFont(new Font("宋体", Font.PLAIN, 16));lblB.setBounds(175, 70, 30, 15);lblC.setFont(new Font("宋体", Font.PLAIN, 16));lblC.setBounds(295, 70, 30, 15);frame.getContentPane().add(lblA);frame.getContentPane().add(lblB);frame.getContentPane().add(lblC);lengthOfa.setBounds(89, 67, 70, 25);lengthOfb.setBounds(205, 65, 70, 25);lengthOfc.setBounds(315, 65, 70, 25);lengthOfa.setColumns(10);      lengthOfb.setColumns(10);lengthOfc.setColumns(10);frame.getContentPane().add(lengthOfa);frame.getContentPane().add(lengthOfb);frame.getContentPane().add(lengthOfc);calculate.setBounds(110, 130, 95, 25);frame.getContentPane().add(calculate);clean.setBounds(240, 130, 95, 25);frame.getContentPane().add(clean);calculate.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent arg0){if(arg0.getSource()==calculate){tri = new Triangle();String[] value = new String[3];value[0] = lengthOfa.getText();value[1] = lengthOfb.getText();value[2] = lengthOfc.getText();if(!tri.Validation(value)){//调用验证函数JOptionPane.showMessageDialog(null, "请确保输入的边为整数!", "错误", JOptionPane.ERROR_MESSAGE);allClean();}else{int a = Integer.valueOf(value[0]).intValue();//已验证过不再进行异常处理int b = Integer.valueOf(value[1]).intValue();int c = Integer.valueOf(value[2]).intValue();String triangleType = tri.triangle(a,b,c);result_1.setText("这个三角形是:"+triangleType);if(triangleType.equals("边的值不在范围内!")){JOptionPane.showMessageDialog(null, "边的值不在范围内!", "错误", JOptionPane.ERROR_MESSAGE);allClean();}else if(triangleType.equals("不能构成三角形.")){JOptionPane.showMessageDialog(null, "不能构成三角形.", "错误", JOptionPane.ERROR_MESSAGE);allClean();}else{result_2.setText("面积是:"+tri.triangleArea(a, b, c)+"     周长是:"+tri.perimeter(a, b, c));}}}}});clean.addActionListener(new ActionListener(){public void actionPerformed(ActionEvent arg0){if(arg0.getSource()==clean){allClean();}}});}private void allClean(){lengthOfa.setText("");lengthOfb.setText("");lengthOfc.setText("");result_1.setText("这个三角形是:");result_2.setText("面积是:       周长是:");}
}

3、界面截图

转载于:https://www.cnblogs.com/chen-dg/p/6802706.html

第4次作业类测试代码+001+陈定国相关推荐

  1. 第4次作业类测试代码+105032014138+牟平

    类测试代码的具体要求如下: 设计三角形完整程序 已经完成的方法是:  String triangle(int a,int b,int c) 现在要求继续增加新的功能: 建立界面,至少包含以下元素,但不 ...

  2. 实验二+001+陈定国

    一.实验目的 掌握基于覆盖理论与基本路径的基本白盒测试方法和实践 二.实验要求 运用逻辑覆盖测试的覆盖准则设计被测程序的测试用例,并运行测试用例检查程序的正确与否,给出程序缺陷小结. 三.实验内容 1 ...

  3. 第四次作业类测试代码+036+吴心怡

    一.类图 二.代码 package application; public class Commission { /* * hp:耳机 80元 mpc:手机壳 10元 cpsp:手机贴膜 8元 */ ...

  4. 第4次作业类测试代码+105032014065+方绎杰

    一.类图 二.代码 Date类: package examOne;import java.util.Scanner;import snippet.Snippet;public class Date { ...

  5. 第4次作业类测试代码+105032014070+胡阳洋

    1.类图. 2.代码及界面. package test.java.distinguish.triangle;public class Distinguish {/*** * @param a 三角形边 ...

  6. 第4次作业类测试代码+163+张玉洁

    1.类图: 2.结果: 3.代码及界面: 1 package test; 2 public class Triangle { 3 public String triangle(int a,int b, ...

  7. 第四次作业类测试代码+108+曾宏宇

    1.类图 2.代码 常量定义: private final static int HP_PRICE=80; private final static int SHELL_PRICE=10; priva ...

  8. 第4次作业类测试代码+087+饶慧敏

    1.类图 2.主要界面 当输入为空,输入非数值型数据时,程序会弹出错误信息,并要求重新输入: 正常情况下的输出结果为: 3.代码如下 1 import java.util.Arrays; 2 3 pu ...

  9. 第4次作业类测试代码+043+杨晨宇

    triangle的代码: package triangle;import java.text.DecimalFormat;public class Triangle {public Triangle( ...

最新文章

  1. 读书笔记:理论生态学原理及应用(一)——合作的机制
  2. 使用Ethereal的过滤器解释
  3. 冲击波病毒攻击-《截获网站服务器数据》
  4. jfinal mysql 配置文件_JFinal 如何将操作日志存入到数据库中
  5. 用Excel三天做出的可视化报告,我用这个工具只用了2小时
  6. 【Flink】SqlValidatorException: Column xxx not found in any table
  7. Spring MVC的WebMvcConfigurerAdapter用法收集(零配置,无XML配置)
  8. 阶梯剖视图_*小星推荐*—模具图纸剖视图的种类及画法,你学到了吗?
  9. 如何在Windows下安装zookeeper?
  10. Personal Leetcode solution(Python) 1~20
  11. (转)C#中的Abstract和Virtual函数区分,因我老弄不明白这个问题,所以转到这儿
  12. Python 基础---列表
  13. Slate轨道工具使用(一)—Track,Clip
  14. Coablt strike官方教程中文译版本
  15. 文件读取漏洞路径收集
  16. 2018.3.4 st
  17. 三维导热问题的ADI-TDMA算法
  18. 骗子网站--正规网赚系统--www.j9m2.com--诈骗网站
  19. 程序员创业:小程序开发费用报价表,包含项目工期和费用明细
  20. 麒麟系统查看微信聊天记录位置、微信收到的文件位置

热门文章

  1. Pr 入门教程如何创建动画开头标题?
  2. Test Renderer
  3. [转] 程序员也要养生
  4. The Trojan War------Greek mythology
  5. STM32F10X SPI操作flash MX25L64读写数据
  6. 小米开源监控系统监控mysql_小米开源监控 Open-Falcon 3.0 部署
  7. 虚拟化概述及VMware VSphere介绍
  8. 内存不能为read修复工具
  9. 有史以来最困难的问题
  10. kafka —— consumers 消费者 group 找不到得原因