使用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;
}
