首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将这些变量从不同的方法传递到其他方法?

如何将这些变量从不同的方法传递到其他方法?
EN

Stack Overflow用户
提问于 2016-09-21 19:04:49
回答 1查看 95关注 0票数 0

我正在自学java,我有一段代码,我正在努力完成这些代码。

以下是要求:

  • 编写一个具有两个双字段宽度和高度的类矩形,并编写一个为这些字段指定参数值的方法void setDimensions(double w, double h)
  • 然后,编写访问器(“getter”)方法double getArea()和double getPerimeter(),它们计算并返回矩形的面积和周长,并编写一个mutator (“setter”)方法void scale(double sf),它将矩形的宽度和高度乘以缩放因子sf。
  • 最后在你的课堂上写一个适当的toString方法。 公共类矩形{双宽;双长;/** */公共空setDimensions(双宽,双长){宽度= 5;长度= 10;} /* */公共静态双getPerimeter(双宽,双长){双周长=2*(宽度+长度);返回周长;} /* */公共静态双getArea(双宽度,双长度){双区域=(宽度*长度);返回区域;} /** /公共空比例尺(双sf) { sf *=长度;sf *=宽度;}公共字符串toString() {System.out.println(“长度为:”+长度);System.out.println(“宽度为”+宽度);getArea(宽度、长度);getPerimeter(宽度、长度);返回“区域为:”+区域;返回“外围为:”+外围;} }

尽管如此,我对如何格式化toString方法感到困惑。这个toString方法是否简单地打印出区域、周长、sf等的值?或者我应该返回某种类型的字符串(对不起,我是新来的,我并不完全理解),我也不认为我的SF方法是应该工作的。方法是否应该在方法中初始化SF?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-09-21 19:15:41

通常,toString方法是一个人类可读的字符串,输出对象的属性/值。

代码语言:javascript
复制
@Override
public String toString() { 
    String myStr= "{length: " + getLength() + ", width: " + getWidth() + 
    ", perimiter: " + getPerimiter() + ", area: " + getArea() + "}"; 
    return myStr;
} 

// will output something like "{length: 2, width: 3, perimiter: 10, area: 6}"

此外,标度法应增加长度和宽度提供的因素作为参数。

代码语言:javascript
复制
public void scale(double sf)
{
    length *= sf;
    width *= sf;
}

// better to create getters and setters and use these.

public void setLength(ln){
    this.length = ln;
}
public double getLength(){
    return this.length;
}
// same for width, then...

public void scale(double sf){
    setLength(getLength()*sf);
    setWidth(getWidth()*sf);
}
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/39624602

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档