任务4:计算方块面积与周长

任务描述

本任务带领大家完成一个填充方块的显示,并计算出方块的周长和面积,运行显示的效果如图4-1所示。


图4-1 图形界面
图4-1 图形界面


支撑知识

4.1 整型

数据类型说明了常量、变量或表达式的性质。常量是指在程序中直接给出的一个符号串,作用是为变量赋值或参与表达式的运算。它可以是一个具体的数值或字符串 。变量是指程序中存储单元的标识符表示,是内存中的一块空间,提供了可以存放信息和数据的地方,具有记忆数据的功能。通常用字母或单词作为变量名 。
int类型是Java最常使用的一种整数类型,它表示整数。整型在Java中的定义为:
//定义一个变量x,赋值为125
int x = 125;

4.2 算术运算符

算术运算符用在数学表达式中,它们的作用和在数学中的作用一样。下表列出了所有的算术运算符。


表4-1 算术运算符
表4-1 算术运算符


任务实施

任务4.1 显示填充方块

在任务3中,我们实现了方块的显示,我们这里只需要改变g的方法即可实现填充效果。


//drawRect改为fillRect
g.fillRect(125, 100, 50, 50);

任务4.2 用变量替换常量

在绘制图形的过程中,我们使用常量位置和长宽来绘制方块,现在我们将用变量来替换掉常量,如代码清单4-1所示。
代码清单4-1:MyPanel.java


//使用JPanel和Graphics类前需要导入
import java.awt.Graphics;
import javax.swing.JPanel;
//使用关键字extends继承JPanel,让MyPanel具有面板功能
public class MyPanel extends JPanel {
    //坐标变量定义
    //定义一个变量x,赋值为125
    int x = 125;
    int y = 100;
    //长宽变量定义
    int width = 50;
    int height = 50;    
    @Override
    public void paint(Graphics g) {
        // TODO Auto-generated method stub
        super.paint(g);
        //绘制方块,10,10表示位置,50,50表示长宽
        //drawRect改为fillRect
        g.fillRect(x, y, width, height);
    }
}

任务4.3 绘制字符串

可以通过g.drawString方法绘制字符,修改MyPanel类:


//使用JPanel和Graphics类前需要导入
import java.awt.Graphics;
import javax.swing.JPanel;
//使用关键字extends继承JPanel,让MyPanel具有面板功能
public class MyPanel extends JPanel {
    //坐标变量定义
    //定义一个变量x,赋值为125
    int x = 125;
    int y = 100;
    //长宽变量定义
    int width = 50;
    int height = 50;
    //周长
    int l = 2 * (width + height);
    int s = width * height;
    @Override
    public void paint(Graphics g) {
        // TODO Auto-generated method stub
        super.paint(g);
        //绘制方块,10,10表示位置,50,50表示长宽
        //g.drawRect(125, 100, 50, 50);
        g.drawString("方块的长度为:" + width, 100, 70);
        g.drawString("方块的宽度为:" + height, 100, 90);
        g.fillRect(x, y, width, height);
        g.drawString("方块的周长为:" + l, 100, 180);
        g.drawString("方块的面积为:" + s, 100, 200);
    }
}

拓展训练

计算矩形周长和面积。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值