零基础自学javase黑马课程第十一天

零基础自学javase黑马课程第十一天_数组

✨欢迎关注🖱点赞🎀收藏⭐留言✒

🔮本文由京与旧铺原创,

😘系列专栏:java学习

💻首发时间:🎞2022年11月2日🎠

🎨你做三四月的事,八九月就会有答案,一起加油吧

🀄如果觉得博主的文章还不错的话,请三连支持一下博主哦

🎧最后的话,作者是一个新人,在很多方面还做的不好,欢迎大佬指正,一起学习哦,冲冲冲

💬推荐一款模拟面试、刷题神器👉[点击进入网站

方法的重载

在一个类中,定义了多个同名的方法,这些同名的方法具有同种的功能

每个方法具有不同的参数类型或参数个数,这些同名的方法,就构成了重载关系

简单记:同一个类中,方法名相同,参数不同的方法,与返回值相关

参数不同:个数不同,类型不同,顺序不同

顺序不同可以构成重载,但是不建议

练习:

package Method;

public class Demo3 {
//设计一个方法用于数组遍历,要求遍历的结果是在一行上的。例如【11,22,33,44,55】
public static void main(String[] args){
int[] arr={11,22,33,44,55};
printArr(arr);
}
public static void printArr(int[] arr){
System.out.print("[");
for (int i = 0; i < arr.length; i++) {
if(i==arr.length-1){
System.out.print(arr[i]);
}else{
System.out.print(arr[i]+",");
}
}
System.out.println("]");
}
}
package Method;

public class Demo4 {
//需求:设计一个方法求数组的最大值,并将最大值返回
public static void main(String[] args){
int[] arr={1,2,3,4,5};
int max=getMax(arr);
System.out.println(max);
}
public static int getMax(int[] arr){
int max=arr[0];
for (int i = 0; i < arr.length; i++) {
if(arr[i]>max){
max=arr[i];
}
}
return max;
}
}
package Method;

public class Demo5 {
//定义一个方法判断数组中的某一个数是否存在,将结果返回给调用处
//return,break关键字的区别
//return:其实跟循环没有什么关系,跟方法有关,表示1结束方法,2返回结果
//如果方法执行到了return,那么整个方法全部结束,里面的循环也会随之结束
//break:其实跟方法没有什么关系的,结束循环或者switch的
public static void main(String[] args){
int[] arr={1,2,3,4,5,6};
boolean flag=contains(arr,5);
System.out.println(flag);
}
public static boolean contains(int[] arr,int number){
for (int i = 0; i < arr.length; i++) {
if(arr[i]==number){
return true;
}
}
return false;
}
}
package Method;

public class Demo6 {
//需求:定义一个方法copyOfRange
//将数组arr中从索引from(包括from)开始,到索引to结束(不包含to)
//的元素复制到新数组中,将新数组返回
public static void main(String[] args){
int[] arr={1,2,3,4,5,6,7,8,9};
int[] copyArr=copyofRange(arr,3,7);
for (int i = 0; i < copyArr.length; i++) {
System.out.print(copyArr[i]+" ");
}
}
public static int[] copyofRange(int[] arr,int from,int to){
int[] newArr=new int[to-from];
//伪造索引的思想
int index=0;
for (int i = from; i < to; i++) {
//格式:数组名【索引】=数据值
newArr[index]=arr[i];
index++;
}
return newArr;
}
}

方法的基本内存原理

从内存的角度去解释

基本数据类型:数据值是存储在自己的空间中

特点:赋值给其他变量,也是赋的真实的值

引用数据类型:数据值是存储在其他空间中,自己空间中存储的是地址值

特点:赋值给其他变量,赋的地址值

方法传递基本数据类型的内存原理

形参的改变,不影响实际参数的值

传递引用数据类型时,传递的是地址值,形参的改变,影响实际参数的值