【课后练习分享】Java用户注册界面设计和求三角形面积的图形界面程序

本文主要是介绍【课后练习分享】Java用户注册界面设计和求三角形面积的图形界面程序,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

目录

java编程题(每日一练):

问题一的答案代码如下:

问题一的运行截图如下:

问题二的答案代码如下: 

问题二的运行截图如下:


java编程题(每日一练):

1.设计一个用户注册的界面,包括用户名、密码输入框,性别单选按钮,表示爱好的 篮球、足球、乒乓球复选框,表示学历的下拉列表框,“注册”按钮和“取消”按钮。

2.设计一个求三角形面积的图形界面程序,要求通过3个输入框输入3个边长,当单 击“计算”按钮时,能够计算以输入的3个边长所形成的三角形的面积。要求能够判断输 入的3个边长是否是数字,三个边长是否能够构成合法的三角形

问题一的答案代码如下:

Java 用户注册界面设计

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;public class Main {public static void main(String[] args) {JFrame frame = new JFrame("User Registration");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400, 300);frame.setLayout(new GridLayout(6, 2));JLabel nameLabel = new JLabel("Username:");JTextField nameField = new JTextField();JLabel passwordLabel = new JLabel("Password:");JPasswordField passwordField = new JPasswordField();JLabel genderLabel = new JLabel("Gender:");JRadioButton maleButton = new JRadioButton("Male");JRadioButton femaleButton = new JRadioButton("Female");ButtonGroup genderGroup = new ButtonGroup();genderGroup.add(maleButton);genderGroup.add(femaleButton);JPanel genderPanel = new JPanel();genderPanel.add(maleButton);genderPanel.add(femaleButton);JLabel hobbyLabel = new JLabel("Hobbies:");JCheckBox basketballBox = new JCheckBox("Basketball");JCheckBox footballBox = new JCheckBox("Football");JCheckBox pingpongBox = new JCheckBox("Ping Pong");JPanel hobbyPanel = new JPanel();hobbyPanel.add(basketballBox);hobbyPanel.add(footballBox);hobbyPanel.add(pingpongBox);JLabel educationLabel = new JLabel("Education:");String[] educationLevels = {"High School", "Associate", "Bachelor", "Master", "Doctor"};JComboBox<String> educationComboBox = new JComboBox<>(educationLevels);JButton registerButton = new JButton("Register");JButton cancelButton = new JButton("Cancel");frame.add(nameLabel);frame.add(nameField);frame.add(passwordLabel);frame.add(passwordField);frame.add(genderLabel);frame.add(genderPanel);frame.add(hobbyLabel);frame.add(hobbyPanel);frame.add(educationLabel);frame.add(educationComboBox);frame.add(registerButton);frame.add(cancelButton);registerButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {String username = nameField.getText();String password = new String(passwordField.getPassword());String gender = maleButton.isSelected() ? "Male" : "Female";String hobbies = "";if (basketballBox.isSelected()) hobbies += "Basketball ";if (footballBox.isSelected()) hobbies += "Football ";if (pingpongBox.isSelected()) hobbies += "Ping Pong ";String education = (String) educationComboBox.getSelectedItem();JOptionPane.showMessageDialog(frame, "Username: " + username + "\nPassword: " + password + "\nGender: " + gender + "\nHobbies: " + hobbies + "\nEducation: " + education);}});cancelButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {nameField.setText("");passwordField.setText("");genderGroup.clearSelection();basketballBox.setSelected(false);footballBox.setSelected(false);pingpongBox.setSelected(false);educationComboBox.setSelectedIndex(0);}});frame.setVisible(true);}
}

问题一的运行截图如下:

问题二的答案代码如下: 

求三角形面积的图形界面程序

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;public class TriangleAreaCalculator {public static void main(String[] args) {JFrame frame = new JFrame("Triangle Area Calculator");frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);frame.setSize(400, 200);frame.setLayout(new GridLayout(5, 2));JLabel sideALabel = new JLabel("Side A:");JTextField sideAField = new JTextField();JLabel sideBLabel = new JLabel("Side B:");JTextField sideBField = new JTextField();JLabel sideCLabel = new JLabel("Side C:");JTextField sideCField = new JTextField();JButton calculateButton = new JButton("Calculate");JLabel resultLabel = new JLabel("Area:");frame.add(sideALabel);frame.add(sideAField);frame.add(sideBLabel);frame.add(sideBField);frame.add(sideCLabel);frame.add(sideCField);frame.add(calculateButton);frame.add(resultLabel);calculateButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {try {double a = Double.parseDouble(sideAField.getText());double b = Double.parseDouble(sideBField.getText());double c = Double.parseDouble(sideCField.getText());if (isValidTriangle(a, b, c)) {double s = (a + b + c) / 2;double area = Math.sqrt(s * (s - a) * (s - b) * (s - c));resultLabel.setText("Area: " + area);} else {resultLabel.setText("Invalid Triangle");}} catch (NumberFormatException ex) {resultLabel.setText("Please enter valid numbers");}}});frame.setVisible(true);}public static boolean isValidTriangle(double a, double b, double c) {return a + b > c && a + c > b && b + c > a;}
}

问题二的运行截图如下:

这两个程序分别实现了用户注册和三角形面积计算的图形界面。第一个程序包含用户名、密码输入框,性别单选按钮,爱好复选框,学历下拉列表框,以及注册和取消按钮。第二个程序通过三个输入框输入三角形的三条边长,并在点击“计算”按钮时计算三角形的面积,并判断输入的边长是否合法。

这篇关于【课后练习分享】Java用户注册界面设计和求三角形面积的图形界面程序的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/996802

相关文章

Java 实用工具类Spring 的 AnnotationUtils详解

《Java实用工具类Spring的AnnotationUtils详解》Spring框架提供了一个强大的注解工具类org.springframework.core.annotation.Annot... 目录前言一、AnnotationUtils 的常用方法二、常见应用场景三、与 JDK 原生注解 API 的

Java controller接口出入参时间序列化转换操作方法(两种)

《Javacontroller接口出入参时间序列化转换操作方法(两种)》:本文主要介绍Javacontroller接口出入参时间序列化转换操作方法,本文给大家列举两种简单方法,感兴趣的朋友一起看... 目录方式一、使用注解方式二、统一配置场景:在controller编写的接口,在前后端交互过程中一般都会涉及

Java中的StringBuilder之如何高效构建字符串

《Java中的StringBuilder之如何高效构建字符串》本文将深入浅出地介绍StringBuilder的使用方法、性能优势以及相关字符串处理技术,结合代码示例帮助读者更好地理解和应用,希望对大家... 目录关键点什么是 StringBuilder?为什么需要 StringBuilder?如何使用 St

使用Java将各种数据写入Excel表格的操作示例

《使用Java将各种数据写入Excel表格的操作示例》在数据处理与管理领域,Excel凭借其强大的功能和广泛的应用,成为了数据存储与展示的重要工具,在Java开发过程中,常常需要将不同类型的数据,本文... 目录前言安装免费Java库1. 写入文本、或数值到 Excel单元格2. 写入数组到 Excel表格

Java并发编程之如何优雅关闭钩子Shutdown Hook

《Java并发编程之如何优雅关闭钩子ShutdownHook》这篇文章主要为大家详细介绍了Java如何实现优雅关闭钩子ShutdownHook,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起... 目录关闭钩子简介关闭钩子应用场景数据库连接实战演示使用关闭钩子的注意事项开源框架中的关闭钩子机制1.

Maven中引入 springboot 相关依赖的方式(最新推荐)

《Maven中引入springboot相关依赖的方式(最新推荐)》:本文主要介绍Maven中引入springboot相关依赖的方式(最新推荐),本文给大家介绍的非常详细,对大家的学习或工作具有... 目录Maven中引入 springboot 相关依赖的方式1. 不使用版本管理(不推荐)2、使用版本管理(推

Java 中的 @SneakyThrows 注解使用方法(简化异常处理的利与弊)

《Java中的@SneakyThrows注解使用方法(简化异常处理的利与弊)》为了简化异常处理,Lombok提供了一个强大的注解@SneakyThrows,本文将详细介绍@SneakyThro... 目录1. @SneakyThrows 简介 1.1 什么是 Lombok?2. @SneakyThrows

在 Spring Boot 中实现异常处理最佳实践

《在SpringBoot中实现异常处理最佳实践》本文介绍如何在SpringBoot中实现异常处理,涵盖核心概念、实现方法、与先前查询的集成、性能分析、常见问题和最佳实践,感兴趣的朋友一起看看吧... 目录一、Spring Boot 异常处理的背景与核心概念1.1 为什么需要异常处理?1.2 Spring B

如何在 Spring Boot 中实现 FreeMarker 模板

《如何在SpringBoot中实现FreeMarker模板》FreeMarker是一种功能强大、轻量级的模板引擎,用于在Java应用中生成动态文本输出(如HTML、XML、邮件内容等),本文... 目录什么是 FreeMarker 模板?在 Spring Boot 中实现 FreeMarker 模板1. 环

SpringMVC 通过ajax 前后端数据交互的实现方法

《SpringMVC通过ajax前后端数据交互的实现方法》:本文主要介绍SpringMVC通过ajax前后端数据交互的实现方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价... 在前端的开发过程中,经常在html页面通过AJAX进行前后端数据的交互,SpringMVC的controll