1.比较数组内容是否完全一致。
解题思路:
这个很简单,你写出的代码可能比我多一些,下面开始讲题。1.长度是否一直2.进行排序3.对应索引值是否一样
/* 定义equals方法,比较数组内容是否完全一致。 */ import java.util.Arrays; public class Test7 { public static void main(String[] args) { int[] arr={1,2,3,4,3,2,}; int[] arr2={2,1,2,3,4,3}; System.out.println("是否一致"+equals(arr,arr2)); } //定义比较方法equals,比较属于Boolean类型 public static boolean equals(int[] arr,int[] arr2){ //比较大小前先进行排序, Arrays.sort(arr); Arrays.sort(arr2); //比较长度是否一致 if(arr.length!=arr2.length){ return false; } for (int i=0;i<arr.length;i++){ if(arr[i]!=arr2[i]){ return false; } } return true; } }
2.统计字符素质出现的次数
解题思路:
1.需要知道每一个字母出现的次数
2.a的Unicode是97,
public class Test4 {
public static void main(String[] args) {
//统计字符
//获取长度100的字符数组
char[] charArray={'a','l','f','m','f','o','b','a','s','n','a'};
//统计字符数组中字母出现的次数
printCount(charArray);
}
public static void printCount(char[] charArray){
int[] count=new int[26];
//对应保存字母出现的次数
for (int i = 0; i <charArray.length ; i++) {
int c=charArray[i];
count[c-97]++;
}
for (int i = 0,ch=97; i <count.length ; i++,ch++) {
if(count[i]!=0){
System.out.println((char)ch+"--"+count[i]);
}
}
3.数组是否对称
解题思路:首尾索引比较
*判断数组是否对称 */
import java.util.Arrays;
public class Tset6 {
public static void main(String[] args) {
int[]arr={1,2,3,4,3,2,1};
System.out.println(Arrays.toString(arr)+"是否对称"+sym(arr));
}
public static boolean sym(int[] arr){
for (int start = 0,end=arr.length-1; start <=end ; start++,end--) {
if(arr[start] !=arr[end]){
return false;
}
}
return true;
}
}
4.计算数组的平均数和高于平均数的个数
解题思路:
1.我们利用遍历求平均数
2.还是利用遍历进行比较大于平均数如果大于平均数就加1,这里得用一个计数器
public class Test {
public static void main(String[] args) {
int[] score={95,92,75,56,98,71,80,58,91,91};
//获取平均分
int avg=getAvg(score);
int count=0;
for (int i=0; i<score.length;i++){
if (score[i]>avg)
count++;
}
System.out.println("高于平均分:"+avg+"的个数有"+count+"个");
}
private static int getAvg(int[] arr) {
int sum=0;
for (int i = 0; i <arr.length ; i++) {
sum+=arr[i];
}
return sum/arr.length;
}
}
题都比较简单,给各位朋友练练手