123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- package com.loveCoding.j20250607_method;
- /**
- * @author WanJl
- * @version 1.0
- * @title T5
- * @description 5.编写一个遍历数组的方法。思考是否要有参数,参数类型是什么,是否要有返回值,如果有返回值类型是什么。
- * @create 2025/6/7
- */
- public class Demo04 {
- //5.编写一个遍历数组的方法。思考是否要有参数,参数类型是什么,是否要有返回值,如果有返回值类型是什么。
- public static void method(int a){
- a=a+100;
- }
- public static void method2(int[] arr){
- //arr=new int[]{15,3};
- arr[0]=15;
- arr[1]=666;
- arr[2]=7777;
- }
- public static void foreachArray(int[] arr){
- for (int i = 0; i < arr.length; i++) {
- System.out.print(arr[i]+"\t");
- }
- }
- public static void main(String[] args) {
- /*
- 调用方法前定义的基本数据类型变量,调用方法时传入方法。无论做任何操作,都不影响外部定义的变量。
- 因为i调用方法时传递是【基本数据类型】的副本,不影响原始值。这种传递参数的方式叫“值传递”
- */
- int a=1;
- System.out.println(a);
- method(a);
- System.out.println(a);
- //引用数据类型传递作为参数的时候,也是【值传递】
- //也是将实参的副本传递进方法。但是引用数据类型的值是堆内存的地址。
- //所以复制的副本,其实也是一个地址。两个地址访问的其实是同一个堆内存的位置。
- //所以,一个进行了修改,另一个也会受到影响。
- int[] arr={1,3,4,5,7,8,9,6,21};
- foreachArray(arr); //1,3,4,5,7,8,9,6,21
- method2(arr);
- System.out.println();
- foreachArray(arr);//15,3,4,5,7,8,9,6,21
- }
- }
|