一.编写代码
1.思路分析
要求一个数组中最大子数组之和,可对数组中的子数组进行遍历,再对子数组中的值进行遍历,然后累加,存储到临时变量中,比较每一个子数组中的值之和,最后得出最大数组之和。
2.java代码
packagehomework;public classMaxSubArray {public static int maxSubArrayMethodOne(int[] arr){int n =arr.length;int ThisSum=0,MaxSum=0,i,j,k;for(i=0;i
ThisSum=0; //重新累加子数组
for(k=i;k
ThisSum+=arr[k];
}if(ThisSum>MaxSum){
MaxSum=ThisSum;
}
}
}returnMaxSum;
}
}
二.使用junit对代码进行单元测试(使用的IDE为idea)
1.测试步骤
1.1要使用junit就要将相应的jar包导入到项目中,可以在官网下载jar包,也可以使用maven自动导入junit相关的jar包,这里使用的是maven的方式将jar包导入项目中。在项目的根目录下新建一个pom.xml文件,pom.xml文件中的内容如下
1.2 在pom.xml中的配置junit的相关依赖,这里使用的是junit4.12,就导入4.12版本的junit,maven会将相关的jar包自动导入项目中
1.3 新建一个测试类,在测试类中创建一个测试方法,并在测试方法上加上Test注解,就可以使用junit对java代码进行测试了
2.测试代码
packagehomework;importorg.junit.Test;public classTestMaxSubArray {
@Testpublic voidtestMaxSubArray(){int[] a ={1,2,3,5};//调用函数
int result =MaxSubArray.maxSubArrayMethodOne(a);
System.out.println("该数组最大子数组之和为:"+result);
}
}
3.测试结果
三.使用JProfiler对代码进行性能测试
1.测试步骤
1.1在官网下载JProfiler的安装包
1.2在idea中下载JProfiler的插件
1.3安装JProfiler,并在idea中集成
1.4点击idea中的JProfiler图标进行测试
2.性能效果
2.1 内存情况
2.2 GC活动情况
2.3 类情况
2.4 线程情况
2.5 CPU负载情况
Java求数组中的最大子数组之和并进行测试和性能分析