回顾
方法重载
定义:在同一个类中,定义多个同名方法,方法名一样,形参列表不同,(顺序,类型,个数),与返回值类型和访问修饰符无关
作用:提高方法调用的灵活性
数组的内存图**************
数组常见操作-JDK提供好的
二维数组
for (int i = 0; i < scores.length; i++) {
int sum=0;
System.out.println("请输入第"+(i+1)+"个班"+"总人数");
int num=sc.nextInt();
scores[i]=new int[num];
for (int i1 = 0; i1 < scores[i].length; i1++) {
System.out.println("请输入第"+(i+1)+"个班"+"第"+(i1+1)+"个人成绩");
int t=sc.nextInt();
// if(min>scores[i][i1]){
// min=scores[i][i1];
// }
if(min>t){
min=t;
}
sum+=t;
}
System.out.println("第"+(i+1)+"个班级"+"平均分为"+sum/scores[i].length);
}
一开始未定义
int [][]scores=new int[2][];具体
动态指定每行长度,需要执行这一步骤,否则在赋值的时候,会出现NullPointException
后 scores[i]=new int[num];
内存分析
冒泡排序
public static int[]bubblesort(int arr[]){
for (int i = 0; i < arr.length; i++) {
for (int j = 0; j < arr.length-i-1; j++) {
if(arr[j]>arr[j+1]){
int temp=arr[j];
arr[j]=arr[j+1];
arr[j+1]=temp;
}
}
}
return arr;
}
选择排序
package kgc.day06;
import java.util.Arrays;
/**
* @Description:
* @author mayoaho
*/
public class xuanze {
public static void main(String[] args) {
int arr[]={6,5,4,3,2,1};
xuanzesort(arr);
System.out.println(Arrays.toString(arr));
}
public static void xuanzesort(int arr[]){
int index=0;
for (int i = 0; i < arr.length-1; i++) {
index=i;
for (int i1 = i; i1 < arr.length-1; i1++) {
if(arr[i1]>arr[i1+1]){
index=i1+1;
}
}
System.out.println();
// int m;
// m=arr[i];
// arr[i]=arr[i+1];
// arr[i+1]=m;
exch(arr,i,index);
System.out.println(Arrays.toString(arr));
}
}
public static void exch(int[] arr,int i,int j){
int t;
t=arr[i];
arr[i]=arr[j];
arr[j]=t;
}
}
二分查找
手写二分方法
public static int binarysort(int arr[],int from,int to,int key){
int low=from;
int high=to-1;
while(low<=high){
int mid=(low+high)>>1;
if (arr[mid] < key) {
low=mid+1;
}else if(arr[mid]>key){
high=mid-1;
}else{
return mid;
}
}
return -(low+1);
}
补充
写sum方法个数未知时
package kgc.day06;
/**
* @Description:
* @author:mayaohao
*/
public class t3 {
public static void main(String[] args) {
System.out.println(sum(1,2,3,4,5,6));
}
public static int sum(int...sum1){
int sum0 = 0;
for (int i : sum1) {
sum0+=i;
}
return sum0;
}
}