【发布时间】:2016-07-21 20:09:53
【问题描述】:
我是 Java 新手,正在处理一项任务。我应该创建自己的类“Cylinder”并从中调用方法,以便能够打印出半径和高度,然后对其进行更改并再次打印出来。我让它打印圆柱体 1 和圆柱体 1.setRadius/setHeight 的设定值..我的问题是我必须让它打印像圆柱半径:和高度:......但是当它打印时我得到的只是 3.04.0或任何设置...我花了很长时间试图弄清楚这一点,请任何帮助表示感谢!
public class Funtimes{
public static void main(String[] args){
Cylinder cylinder1= new Cylinder(1,2);
System.out.println(cylinder1);
cylinder1.setRadius(3);
cylinder1.setHeight(4);
System.out.println(cylinder1);
}}
class Cylinder
{
private double radius, height, area, volume;
public Cylinder(double height, double radius){
this.radius = radius;
this.height=height;
}
public double getRadius() {
return radius;
}
public double getHeight() {
return height;
}
public double getArea() {
double area = (2 * Math.PI * radius * height) + (2 * Math.PI * Math.pow(radius, 2));
return area;
}
public void setRadius(double r) {
radius = r;
}
public void setHeight(double h) {
height = h;
}
public double calcVolume() {
double volume = Math.PI * Math.pow(radius, 2) * height;
return volume;
}
public String toString (){
StringBuilder StBuild = new StringBuilder();
StBuild.append(radius).append(height);
return StBuild.toString();
}
public static void main(String[] args) {
Cylinder cylinder1 = new Cylinder(5, 5);
System.out.println(cylinder1);
}
}
【问题讨论】:
-
它到底打印了什么,你希望它打印什么?
-
好吧,除了将半径和高度附加到字符串生成器之外,还要附加要打印的文本:
append("radius : ")。还请了解 Java 命名约定,并尊重它们。变量以小写字母开头。而且体积和面积不应该被声明为字段。 -
不要在标题中添加已解决,而是接受答案
-
toString method的可能重复
标签: java class tostring setvalue