文章目录
- 数组最值
- 感悟
- 改进
- 反转数组
- 问题
- 代码
- 改进
数组最值
package com.zhang;
/*
求数组最大最小值
*/
public class test_arr1 {
public static void main(String[] args) {
int[] arr = {10,66,42,8,999,1};
max(arr);
min(arr);
}
public static int max(int[] arr){
int max = arr[0];
for(int i=1;i<arr.length-1;i++){
if(arr[i]>arr[i+1]){
max = arr[i];
}
}
System.out.println("max:"+max);
return max;
}
public static int min(int[] arr){
int min = arr[0];
for(int i=1;i<arr.length-1;i++){
if(arr[i]<min){
min = arr[i];
}
}
System.out.println("min:"+min);
return min;
}
}
感悟
- 技术真是越来越新,补全代码的功能真的很牛。写出了max()方法,min()方法几乎就是自动全部补全的。但是同时要注意,自动补全的代码是不是你想要的,有时候提示的代码可能会把你引向错误的方向。
- 我这里用了封装的方法,我觉得自己做的很好。
改进
以后可以改进为 用户输入数字数组,再进行比较。
反转数组
问题
对for理解不真实,用法错误
代码
package com.zhang;
/*
反转数组
*/
public class test_arr2 {
public static void main(String[] args) {
int[] arr={11,22,33,44,55,66};
reverse(arr);
}
public static void reverse(int[] arr) {
int head = 0;
int end = arr.length - 1;
for (int i = head,j = end; i <= j; i++,j--) {
int temp = arr[i];
arr[i] = arr[j];
arr[j] = temp;
}
for(int i : arr){
System.out.println(i);
}
}
}
改进
- 修改为用户输入的数组
- 整理最后输出的格式,使其看起来更美观,更像一个数组的样式