Kit*_*ray 5 java methods performance program-entry-point
这可能是一个愚蠢的问题,但我从一本书中自学,我注意到很多例子都在main之外的方法中使用print语句.我想知道你把它放在哪里有所不同所以当我遇到问题时,我粘贴了我正在处理的程序.让getArea方法打印该区域或将其保留在main中会更有效吗?
private static Scanner in;
private static double s;
private static double a;
public static void main(String[] args) {
     in = new Scanner(System.in);
     DecimalFormat two = new DecimalFormat("#.##");
     System.out.println("Enter the length from center to vertex: ");
     double r = in.nextDouble();
     s = getSide(r);
     a = getArea(s);
     System.out.println("The area of a pentagon of radius "+r+" is "+two.format(a));
}
public static double getSide(double radius){
    double side = 2 * radius * Math.sin((Math.PI) / 5);
    return side;
}
public static double getArea(double side){
    double area = (5 * Math.pow(side, 2)) / (4 * Math.tan((Math.PI) / 5));
    return area;
}
Run Code Online (Sandbox Code Playgroud)
    效率没有差别.这可以通过以下事实看出:函数无法找出其他函数所称的函数.它不可能以不同的方式表现.(除了堆栈内省和内联......)
从结构上来说,最好是尝试保持方法纯粹,因为如果不需要,它们不会引起副作用.这使程序更容易理解.纯函数接受一些值并返回一个值而不改变任何其他值.打印是一种副作用,因此尽量避免使用计算式功能.
|   归档时间:  |  
           
  |  
        
|   查看次数:  |  
           77 次  |  
        
|   最近记录:  |