매개변수 전달기법(parameter passing)

강9·2023년 11월 27일
0

Java

목록 보기
37/71
post-thumbnail

🔖 매개변수 전달기법(parameter passing)


1️⃣ Call By Value(값 전달)

int a = 10;
int b = 20;
add(a,b);

public int add(int a, int b) {
int sum = a+b;
return sum;

2️⃣ Call By Reference(번지 전달) --> java는 거의 번지 전달형 사용

int[] a = {1,2,3,4,5};
add(a);

public int add(int[] a) {
  int sum = 0;
    for (int i=0; i < a.length; i++) {
      sum += a[i];
    }
   return sum;
}

Call By Reference 예제1)

public class CallByReference {
    public static void main(String[] args) {
        float a = 56.7f;
        float b = 78.9f;
        
        floatAdd(a,b); // Call By Value
        System.out.println("종료");

    }
    // Q. 매개변수로 2개의 실수를 받아서 총합을 구하여 출력하는 메서드를 정의하시오.
    public static void floatAdd(float a, float b) {
        float hap = a+b;
        System.out.println("hap = " + hap);
    }
}

Call By Reference 예제2)

public class CallByReferenceExam {
    public static void main(String[] args) {
        int[] a = {1,2,3,4,5};

        int result = addArray(a);
        System.out.println("result = " + result);
    }
    // Q. 매개변수로 정수형 배열을 받아서 배열의 총합을 구하여 리턴하는 메서드를 정의하시오.
    public static int addArray(int[]a) {
        int sum=0;
        for (int i = 0; i < a.length; i++) {
            sum+=a[i];
        } // for i_
        return sum;
    }
}
profile
코린이 일기

0개의 댓글