m0_62438861
2021-10-05 09:59
采纳率: 70%
浏览 44
已结题

有会java的程序员吗?可以请教一下吗?

设计一个box类,这个类有长,宽,高,容积,使用容积,共五个属性,一个构造方法,传入三个参数初始化长宽高属性,一个计算容积方法,并将结果附值给容积属性,一个装入盒子的方法,可以改变使用容积属性,一个清空盒方法,将盒子使用容积置为零,一个判断盒子是否装满方法
以下是程序运行结果:
输入长:5
输入宽:5
输入高:5
体积为:125
请装入:25
剩余:100
继续装入:50
剩余:50
继续装入:100
装入失败!溢出50
清空
继续装入:50
以装满,装入成功!
剩余:0

  • 好问题 提建议
  • 收藏

2条回答 默认 最新

  • qfl_sdu 2021-10-05 10:20
    已采纳
    import java.util.Scanner;
    
    public class Box {
        
        private int length;  //长
        private int width;  //宽
        private int height;  //高
        private int vol;  //容积
        private int volUsed; //已用容积
        //构造函数
        public Box(int l,int w,int h){
            length = l;
            width = w;
            height = h;
            volUsed = 0;
        }
        //计算容积
        public void CaculateVol(){
            vol = length * width * height;
        }
        //装箱
        public boolean InputBox(int vol){
            if(vol < this.vol - this.volUsed) {
                volUsed += vol;
                System.out.println("剩余:"+ (getVol() - getVolUsed()));
                return true;
            }else if(vol < this.vol - this.volUsed){
                volUsed += vol;
                System.out.println("已装满,装入成功");
                System.out.println("剩余:0");
                return true;
            }else {
                System.out.println("装入失败!溢出"+(vol - (this.vol - this.volUsed)));
                return false;
            }
        }
        public int getLength() {
            return length;
        }
        public void setLength(int length) {
            this.length = length;
        }
        public int getWidth() {
            return width;
        }
        public void setWidth(int width) {
            this.width = width;
        }
        public int getHeight() {
            return height;
        }
        public void setHeight(int height) {
            this.height = height;
        }
        public int getVol() {
            return vol;
        }
        public void setVol(int vol) {
            this.vol = vol;
        }
        public int getVolUsed() {
            return volUsed;
        }
        public void setVolUsed(int volUsed) {
            this.volUsed = volUsed;
        }
        //清空
        public void Clear(){
            volUsed = 0;
        }
        //判断箱子是否已满
        public boolean isFull(){
            if(volUsed == vol)
                return true;
            else
                return false;
        }
    
    
        public static void main(String[] args) {
            Scanner sc = new Scanner(System.in);
            System.out.print("输入长:");
            int leng = sc.nextInt();
            System.out.print("输入宽:");
            int wd = sc.nextInt();
            System.out.print("输入高:");
            int hh = sc.nextInt();
            Box b = new Box(leng,wd,hh);
            System.out.println("体积为:"+b.getVol());
            
            System.out.print("请装入:");
            int v = sc.nextInt();
            b.InputBox(v);
            while(!b.isFull()){
                System.out.print("继续装入:");
                v = sc.nextInt();
                b.InputBox(v);
            }
    
        }
    
    }
    
    
    已采纳该答案
    评论
    解决 无用
    打赏 举报
  • 编程萌新555 2021-10-05 10:09

    这个呀,你是要全部代码吗?

    评论
    解决 无用
    打赏 举报

相关推荐 更多相似问题