欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

Java数组内元素反转、整数每个位置上的数字进行反转

程序员文章站 2024-03-23 21:58:10
...
package com.zpr.array;

public class Reverse {

    public static void main(String[] args) {
        // 给定一个数组,组内元素反转,不构建新数组
        int[] arr = {1,2,3,4,5,6,1,2,4,9,3};
        /*
         * 思路:最远元素与最近元素交换位置
         * 1.定义中间变量做交换
         * 2.前后交换
         * 3.循环走到一半交换完成
         * */
        for (int i = 0; i < arr.length / 2; i++) {
            int temp = arr[i];
            arr[i] = arr[arr.length-1-i];
            arr[arr.length-1-i] = temp;
        }

        for (int i : arr) {
            System.out.print(i + "\t");
        }
    }
}


package com.zpr.array;

// 给出一个32位的有符号整数,将整数中的每位上的数字进行反转
public class ReverseInt_number {
    public static void main(String[] args) {
        int reverse_num = reverse(-123);
//        System.out.println(reverse_num);
    }
    public static int reverse(int n){
        String num = n + ""; // 数-->字符串
        char[] chars = num.toCharArray();// 字符串-->数组

        int end = 0; // 判断标识
        if (n<0) end = 1; // 若n<0,字符数组最后一位为(-)号

        String numStr = "";
        for (int i = chars.length-1; i >= end; i--) {
//            System.out.print(chars[i]);
            numStr += chars[i]; // 数组--> 字符串
        }

        if (n<0){
            System.out.println("-"+Integer.parseInt(numStr));
        }else return Integer.parseInt(numStr);
        return 0;

    }
}