需求说明:
创建一个数学工具类。
将该类设计为final类。
将该类的构造方法的访问权限定义为私有,以防止外界实例化该类。
在该类定义静态double类型常量π,其值为3.14159268。
定义静态方法addition(),用于计算一个int[]类型的数组元素之和。
定义静态方法circ(),用于计算圆形的周长。
定义静态方法sort(),用于对传入的int[]数组元素进行升序排序。
实现思路:
创建一个数学工具类的实现思路:
创建MathUtils类,该类可作为一个常用的数学工具类,其中包括静态常量π,π值为3.14159268,静态方法addition(int[] data),该方法用于计算传入数组的各元素和,静态方法cicr(double r),该方法用于计算传入半径长度的圆周长,静态方法sort(int[] data),该方法将传入的数组进行升序排序。
创建测试类MathUtilsTest,在该类的入口方法中,使用MathUtils类的相关静态方法实现计算需求。
实现代码:
MathUtils类
import java.util.Arrays; import java.util.Date; public final class MathUtils { final static double π = 3.14159268; //构造方法定义成私有访问权限 private MathUtils() { } //计算数组元素的和 public final static void addition(int[] data) { int sum = 0; for (int i = 0; i < data.length; i++) { sum += data[i]; } System.out.println("data数组各元素和="+sum); } //计算圆形的周长 public final static void circ(double r) { double perimeter = 2*π*r; System.out.printf("半径为%f的园的周长是%f\n",π,perimeter); } //对数组进行排序 public final static void sort(int[] data) { System.out.println("data数组排序前的结果:"); for (int i = 0; i < data.length; i++) { System.out.print(data[i]+"\t"); } System.out.println(); System.out.println("data数组排序后的结果:"); for (int i = 0; i < data.length; i++) { Arrays.sort(data); System.out.print(data[i]+"\t"); } } }
测试类MathUtilsTest
import javax.xml.bind.Marshaller; public class MathUtilsTest{ public static void main(String[] args) { int[] data = new int[]{5,7,1,3,2,4,8,9,6}; System.out.println("π的值:"+MathUtils.π); MathUtils.addition(data); MathUtils.circ(2); MathUtils.sort(data); } }