从返回方法获取正确的打印输出

时间:2014-01-26 00:48:36

标签: java

我正在尝试编写一小段代码,在给出r和h时输出三个数字的最小值,最多三个数字,以及一个圆柱体的表面积。

我编写了代码,编译了它,它的工作方式与我想要的完全一致。但是,对于实际的打印输出,我希望它更好一些。我遇到了麻烦。

在查看下面的代码时,当前输出读作: 3 56.8 半径为3.0且高度为4.5的圆柱体的表面积为141.3716694115407

我想在圆柱方法后模拟实际打印输出(即“5,7和3的最小值为3”和“最大值......”)。圆柱部分很容易,因为我的打印声明在方法中...方法本身不是返回类型。

但是作为返回类型的findMin和findMax方法,是否有人可以向我提供有关如何使代码实际输出的信息不仅仅是最小值或最大值的建议或提示?我尝试在main方法下的实际println语句中实际播放,但不断出错。

非常感谢......来自初学者

public class Test {

public static void main(String[] args) {
    System.out.println(findMin(5, 7, 3));
    System.out.println(findMax(-5.1, 32.5, 56.8));
    cylinderSurfaceArea(3.0, 4.5);  
}   

public static int findMin(int a, int b, int c) {
    int minimum = Math.min(a, b);
    int minimum2 = Math.min(minimum, c);
    return minimum2;
}   

public static double findMax(double a, double b, double c) {
    double maximum = Math.max(a, b);
    double maximum2 = Math.max(maximum, c); 
    return maximum2;
}

public static void cylinderSurfaceArea(double a, double b) {
    double answer = 2 * Math.PI * (a * a) + 2 * Math.PI * a * b;
    System.out.println("The surface area of a cylinder with radius " + a + " and height " + b + " is " + answer); 
}

}

1 个答案:

答案 0 :(得分:1)

一种方法是将print语句放在方法中(我不推荐):

public static int findMin(int a, int b, int c)
{
    int minimum = Math.min(a, b);
    int minimum2 = Math.min(minimum, c);
    System.out.println("The minimum of " + a + ", " + b + " and " + c + " is " + minimum2);
    return minimum2;
}

另一个是存储您要找到的最小值的变量:

int a = 5, b = 7, c = 3;

并在print方法中使用main()语句:

System.out.println("The minimum of " + a + ", " + b + " and " + c + " is " + 

注意:

您可能会发现有趣的printf,可以更灵活的方式使用:

System.out.printf("The minimum of %d, %d and %d is %d.", a, b, c, minimum2);
System.out.printf("The minimum of %d, %d and %d is %d.", a, b, c, findMin(5, 7, 3));