我的第一节Java实验课:图形面积计算器实现全记录 | 附完整可运行代码
作为刚接触Java的新手,第一次完成实操实验课的图形面积计算器作业,从理解基础语法到调试代码,踩了几个小坑也收获了不少入门经验。今天把完整的实现过程和可直接运行的代码分享出来,希望能给同样刚入门的小伙伴一点参考~
一、实验需求
本次实验的核心目标是用Java编写一个控制台程序,实现4种常见图形的面积计算:
- 控制台展示图形选择菜单(矩形、正方形、圆形、三角形);
- 根据用户输入的图形编号,接收对应参数(长/宽、边长、直径、底/高);
- 封装不同图形的面积计算方法,通过调用方法得到结果并输出。
二、完整实现代码
代码采用「主方法处理逻辑+分方法封装计算」的结构,兼顾可读性和复用性,新手直接复制就能运行:
import java.util.Scanner;
public class GraphicArea {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
// 展示菜单//
System.out.println("1. 矩形 2. 正方形 3. 圆形 4. 三角形");
System.out.print("请选择需要计算面积的图形:");
//获取操作编号//
int bianhao = scanner.nextInt();
//设置初始面积//
double area = 0;
//用switch结构语句来实现选择分支,根据输入的操作编号在case语句中编写对应的面积计算//
switch (bianhao) {
case 1:
System.out.print("请输入矩形的长:");
double chang = scanner.nextDouble();
System.out.print("请输入矩形的宽:");
double kuan = scanner.nextDouble();
area = getRectangleOrSquareArea(chang,kuan);
break;
case 2:
System.out.print("请输入正方形的边长:");
double bianchang = scanner.nextDouble();
area = getRectangleOrSquareArea(bianchang,bianchang);
break;
case 3:
System.out.print("请输入圆的直径:");
double zhijing = scanner.nextDouble();
area = calculateCircleArea(zhijing);
break;
case 4:
System.out.print("请输入三角形的底:");
double di = scanner.nextDouble();
System.out.print("请输入三角形的高:");
double gao = scanner.nextDouble();
area = calculateTriangleArea(di,gao);
break;
}
System.out.println("该图形的面积为:" + area);
}
//计算矩形和正方形面积
public static double getRectangleOrSquareArea(double x,double y ){
double s=x*y;
return s;
}
//计算圆形面积
public static double calculateCircleArea(double d) {
double s=Math.PI *(d/2)*(d/2);
return s;
}
//计算三角形面积
public static double calculateTriangleArea(double d,double h) {
double s=(d*h)/2;
return s;
}
}
三、代码核心解析(新手友好版)
1. 输入交互:Scanner类的使用
通过Scanner scanner = new Scanner(System.in);创建输入对象,实现控制台和用户的交互,分别获取「图形编号」和「图形参数」,这是Java控制台程序最基础的输入方式。
2. 分支逻辑:switch语句
用switch (bianhao)根据用户输入的编号匹配对应图形,每个case处理一种图形的参数输入和方法调用,break确保执行完当前分支后退出switch,避免分支穿透。
3. 功能封装:方法定义与调用
把不同图形的面积计算逻辑封装成独立方法(比如calculateCircleArea计算圆形面积),主方法只负责逻辑调度,既符合面向对象的思想,也让代码更易维护。
- 矩形/正方形复用同一个方法(因为正方形是特殊的矩形);
- 圆形面积通过
Math.PI调用Java内置的圆周率,基于直径计算(半径=直径/2); - 三角形面积遵循「底×高÷2」的公式。
四、新手小总结
第一次写Java实操代码,最大的收获是理解了「方法封装」和「分支语句」的实际应用,也踩了两个小坑:
- 一开始忘记给
double类型的变量赋值初始值,导致编译报错; - 调用方法时参数个数写错,后来对照方法定义修正后就解决了。
这些小问题也让我意识到,Java作为强类型语言,语法细节一定要注意~