数组和数组的反转

来源:互联网 发布:淘宝代运营合作 编辑:程序博客网 时间:2024/06/07 16:50
今天的练习是在数组和数组反转,也看了一些冒泡排序和快速排序的方法,觉得很经典的一道例题分享给大家

import java.util.Arrays;

/*定义一个数组,元素有:{88,55,77,33,66,44};
1、定义一个方法,求出数组中的最大值
2、定义一个方法,将数组中的内容反转
3、定义一个方法,求出数组中所有偶数的和
并将相应的结果打印

*步骤:
*    1.定义数组
*    2.定义一个方法求最大值的方法.
*        两点明确:
*            参数:int 数组
*            返回值类型:int
*        1.定义变量max 把数组0号索引的元素赋值给max
*        2.if判断 依次拿着数组元素和max比较 .
*        3.数组元素大于max  把数组元素的值赋给max.
*        4.return max;
*    3.定义方法将数组中的内容反转    
*        1.两点明确:
*            参数:int 数组
*            返回值类型:void
*        
*        2.for循环拿到每一个元素.
*        定义 i=0,j=arr.length-1; 判断i<j;i++,j--
*            把temp=arr[i]
*            arr[i]=arr[j]
*            arr[j]=temp;
*        4.定义方法 遍历新数组 .最后调用方法    
*    4.定义一个方法,求出数组中所有偶数的和
*        1.两个明确
*            参数:int 数组
*            返回值类型:int
*        定义sum变量记录累加和
*        2.遍历数组每一个元素
*        3.判断%2==0;
*        4. 满足要求sum累加
*        5.返回sum
*/

public class Demo2 {
    public static void main(String[] args) {
        // 定义数组
        int[] arr = { 88, 55, 77, 33, 66, 44 };
        // 调用求最大值的方法
        int max = max(arr);
        System.out.println("数组元素的最大值是:" + max);
        // 调用反转数组的方法
        reverse(arr);
        // 翻转后的数组
        System.out.print("翻转后的数组是:");
        printArray(arr);
        // 调用求数组中所有偶数的和的方法
        System.out.println();
        int sum = getSum(arr);
        System.out.println("数组的满足元素是偶数的和是:" + sum);

    }

    // 遍历翻转后的数组
    private static void printArray(int[] arr) {
        System.out.print("[");
        for (int i = 0; i < arr.length; i++) {
            // 打印里面的每个元素
            if (i != arr.length - 1) {
                System.out.print(arr[i] + ",");
            } else {
                System.out.print(arr[i] + "]");

            }

        }
    }

    // 求数组中所有偶数的和的方法
    private static int getSum(int[] arr) {
        // 定义sum 记录累加和
        int sum = 0;
        // 遍历获取每一个元素
        for (int i = 0; i < arr.length; i++) {
            // 判断%2==0;
            if (arr[i] % 2 == 0) {
                sum += arr[i];
            }
        }
        return sum;
    }
//对数组进行反转
    private static void reverse(int[] arr) {
        // 定义 i=0,j=arr.length-1; 判断i<j;i++,j--i向右移动.j向左移动
        for (int i = 0, j = arr.length - 1; i < j; i++, j--) {
            // 把里面的元素交换
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;

        }

    }

    // 求数组最大值的方法
    private static int max(int[] arr) {
        // 定义max 把数组第一个元素赋给他
        int max = arr[0];
        // 遍历数组获取每一个数组元素
        for (int i = 1; i < arr.length; i++) {
            // 判断数组元素和max比较 如果比max大
            if (arr[i] > max) {
                // 就把元素赋给max
                max = arr[i];
            }
        }
        // 返回结果
        return max;
    }

}

原创粉丝点击