欢迎访问宙启技术站
智能推送

使用Java编写的10个实用函数

发布时间:2023-06-09 11:26:49

1. 字符串反转函数

字符串反转函数可以将一个字符串反向排列,比如"hello"反转为"olleh"。

public static String reverseString(String s) {
    return new StringBuilder(s).reverse().toString();
}

2. 数组最大值函数

数组最大值函数可以找出给定数组中的最大值。

public static int findMax(int[] arr) {
    int max = arr[0];
    for (int i = 1; i < arr.length; i++) {
        if (arr[i] > max) {
            max = arr[i];
        }
    }
    return max;
}

3. 阶乘函数

阶乘函数可以计算给定数的阶乘,比如5的阶乘为120。

public static int factorial(int n) {
    if (n == 0) {
        return 1;
    }
    else {
        return n * factorial(n-1);
    }
}

4. 求数组平均值函数

求数组平均值函数可以计算给定数组中所有元素的平均值。

public static double findAverage(int[] arr) {
    int sum = 0;
    for (int i = 0; i < arr.length; i++) {
        sum += arr[i];
    }
    return (double)sum / arr.length;
}

5. 判断素数函数

判断素数函数可以判断给定数是否是素数,素数是只能被1和自身整除的数,比如2、3、5、7等。

public static boolean isPrime(int n) {
    if (n <= 1) {
        return false;
    }
    for (int i = 2; i <= Math.sqrt(n); i++) {
        if (n % i == 0) {
            return false;
        }
    }
    return true;
}

6. 非重复数组函数

非重复数组函数可以将给定数组中的重复元素只保留一个,将其它重复元素删除,返回一个新数组。

public static int[] removeDuplicates(int[] arr) {
    int[] temp = Arrays.copyOf(arr, arr.length);
    Arrays.sort(temp);
    int j = 0;
    for (int i = 0; i < temp.length - 1; i++) {
        if (temp[i] != temp[i+1]) {
            temp[j++] = temp[i];
        }
    }
    temp[j++] = temp[temp.length-1];
    return Arrays.copyOf(temp, j);
}

7. 字符串分割函数

字符串分割函数可以将给定字符串按照指定符号分割成多个字符串,并返回一个字符串数组。

public static String[] splitString(String s, String separator) {
    return s.split(separator);
}

8. 判断回文函数

判断回文函数可以判断给定字符串是否是回文,即正着读和倒着读都一样,比如"racecar"。

public static boolean isPalindrome(String s) {
    String reverse = reverseString(s);
    if (s.equals(reverse)) {
        return true;
    }
    else {
        return false;
    }
}

9. 数组排序函数

数组排序函数可以将给定数组按照升序或降序排序。

public static void sortArray(int[] arr, boolean ascending) {
    if (ascending) {
        Arrays.sort(arr);
    }
    else {
        Arrays.sort(arr);
        int i = 0, j = arr.length - 1;
        while (i < j) {
            int temp = arr[i];
            arr[i] = arr[j];
            arr[j] = temp;
            i++;
            j--;
        }
    }
}

10. 数组求和函数

数组求和函数可以计算给定数组中所有元素的和。

public static int findSum(int[] arr) {
    int sum = 0;
    for (int i = 0; i < arr.length; i++) {
        sum += arr[i];
    }
    return sum;
}