2014-01-26 53 views
0

我正在尝试写一小段代码,当给出r和h时,输出min的三个数字,最多三个数字和一个圆柱体的表面积。从返回方法获取正确的打印输出

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

在看下面的代码,电流输出读作: 56.8 圆柱体具有半径3.0和高度4.5表面积141.3716694115407

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

但是,返回类型的findMin和findMax方法,任何人都可以提供给我建议或提示如何让代码实际输出超过最小值或最大值?我试着在主要方法下的实际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

一种方法是把方法里面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; 

,并有在main()方法print声明:

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)); 
+0

非常感谢。是的,在打印语句之前,我并没有定义我的整数和双精度,所以我得到a,b,c ......没有定义的错误信息。谢谢。 – Rivers31334