javaarraysԴ??
传统的做法就是for循环, 通过循环比较得到最小值,最大值. 通过累加的和除以个数等于平均值比较新的做法就是Java8 的流操作. 可以更方便快捷的得到最大,最小和平均值
参考代码如下
import java.util.Arrays;import java.util.IntSummaryStatistics;
import java.util.stream.Collectors;
public class ArrayDemo {
public static void main(String[] args) {
Integer[] nums= { 6,5,7,8};
test1(nums);
System.out.println("----分割线---");
test2(nums);
}
//传统的处理方法
public static void test1(Integer[] nums) {
int max=Integer.MIN_VALUE;
int min=Integer.MAX_VALUE;
int sum=0;
for (Integer num : nums) {
if(num>max) {
max=num;
}
if(num<min) {
min=num;
}
sum+=num;
}
double avg=sum*1.0/nums.length;
System.out.println("最大值:"+max);
System.out.println("最小值:"+min);
System.out.println("平均值:"+avg);
}
//Java8 开始的 stream操作
public static void test2(Integer[] nums) {
IntSummaryStatistics results = Arrays.stream(nums).collect(Collectors.summarizingInt(e->e));
int max=results.getMax();//获取最大值
System.out.println("最大值:"+max);
int min=results.getMin();
System.out.println("最小值:"+min);
double avg=results.getAverage();
System.out.println("平均值:"+avg);
}
}
java实现 一共有 条数据,每页显示 条数据,当前页为 2,请求出上一页和下一页
不牵扯数据库的源码情况下,看一下代码import java.util.Arrays;public class GetPage {
//定义一个长度为的数组,作为假数据
private String[] data = new String[];
//初始化数组数据
public GetPage(){
//填充假数据
for(int i = 0 ; i < ; i++){
data[i]=String.valueOf(i);
}
}
//根据页数取数据
public String[] getData(int page,源码大富豪1源码int num){
return Arrays.copyOfRange(data,(page-1)*num,page*num);
}
//根据上下页标志符,0为上一页,源码其他为下一页
public String[] getDataByI(int page,源码飘逸云源码int i,int num){
int p =(i==0)?page--:page++;
return getData(p,num);
}
//输出
public void print(String[] str) {
for(String s: str){
System.out.println(s);
}
}
public static void main(String[] args) {
//定义每页显示条数
int num = ;
//定义当前页数
int page = 2;
//
GetPage gp = new GetPage();
String[] str1 = gp.getData(page,num);
System.out.println("第二页数据:");
gp.print(str1);
String[] str2 = gp.getDataByI(page,0,num);
System.out.println("第二页的上一页数据:");
gp.print(str2);
}
}
Java 的Arrays.toString()方法的使用+底层分析
在编程中,我们时常需要将数组以易于理解的源码形式输出。此时,源码Java的源码Arrays类中的toString()方法提供了便捷的解决方案,无需借助for循环。源码通常,源码若直接打印数组,源码得到的源码坐标cpp源码往往是内存地址而非数组元素。而toString()方法则能将数组转化为字符串形式输出,源码适用范围广泛,源码包括long、闪翼源码float、double、int、付费源码查询boolean等多种基本数据类型和byte、object等数组。
若我们使用toString()方法,却未见for循环的身影,但控制台却顺利显示了数组值,那么,它究竟如何实现这一功能呢?深入源码探索答案。
2024-12-29 06:52
2024-12-29 05:28
2024-12-29 05:13
2024-12-29 04:49
2024-12-29 04:40