함수 = 메소드
함수 유형 4가지
- 함수 내에서 처리한 결과값을 반환할 필요가 없고, 함수 내에서 수행에 필요한 데이터값을 넣어주지 않아도 되는 경우
- 함수 내에서 처리한 결과값을 반환할 필요가 없고, 함수 내에서 수행에 필요한 데이터값을 넣어주어야 하는 경우
- 함수 내에서 처리한 결과값을 반환할 필요가 있고, 함수 내에서 수행에 필요한 데이터값을 넣어주어야하는 경우
- 함수 내에서 처리한 결과값을 반환할 필요가 있고, 함수 내에서 수행에 필요한 데이터값을 넣어주지 않아도 되는 경우
※함수 안에 함수를 만들수 없다.
유형 1. 반환값이 없고, 매개변수가 없는 경우
public static void add() {
int num1 = 10;
int num2 = 20;
int result = num1 + num2;
System.out.println(result);
return;
public static void main(String[] args) {
add();
유형 2. 반환값이 없고, 매개변수가 없는 경우
public static void add1(int num1, int num2) {
int result = num1 + num2;
System.out.println(result);
return;
public static void main(String[] args) {
add1(10,20);
add1(20,40);
유형 3. 반환값, 매개변수가 있는 경우
public static int add2(int num1, int num2) {
int result = num1 + num2;
return result; //호출한 곳으로 결과값(반환값)을 돌려보냄.
public static void main(String[] args) {
//int add2(num1,num2);
add2(10,20); //호출, 함수 내에서 돌려보내준 값을 가지고 있음.
int sum = add2(10,20);
System.out.println(sum);
System.out.println(add2(10,20));
ex1) 2개의 매개변수를 받아 더하기(sum), 빼기(sub), 곱하기(mul), 나누기(div)를 할 수 있는 함수를 정의하고,
main 함수에서 호출하여 사용
public static int sum(int a, int b) {
return a+b;
}
public static int sub(int a, int b) {
return a - b;
}
public static int mul(int a, int b) {
return a * b;
}
public static int div(int a, int b) {
return a / b;
}
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
System.out.println("정수1 입력");
int a = sc.nextInt();
System.out.println("정수2 입력");
int b = sc.nextInt();
System.out.println(sum(a,b));
System.out.println(sub(a,b));
System.out.println(mul(a,b));
System.out.println(div(a,b));
}
}
ex2) 이름을 매개변수로 입력받아 출력하는 함수를 정의하고 main 함수에서 호출하는 프로그램 작
public static void printGreeting(String name) {
System.out.println(name + " 님 안녕하세요.");
return;
}
public static void main(String[] args) {
printGreeting("자바");
printGreeting("홍길동");
ex3) name + "님 안녕하세요." 10회 반복
public static void printGreeting1(String name) {
for(int i = 1; i<=10; i++) {
System.out.println(name + " 님 안녕하세요.");
}
return;
}
public static void main(String[] args) {
printGreeting1("자바");
}
}
ex4) 2개의 정수를 매개 변수로 받아 나누기 연산을 수행하는 함수를 정의. 2번째 매개변수가 0이면 함수 수행을 멈추고,
2번째 매개변수가 0이 아니면 나누기 연산을 수행
public static void divide(int a, int b) {
if(b==0) {
System.out.println("나누는 수는 0이 될 수 없음");
return;
}
else { int result = a/b;
System.out.println(a+"/"+b+"=" + result);
}
}
public static void main(String[] args) {
divide(10,2);
ex5) 두 개의 정수와 하나의 연산자를 매개변수로 입력받아 더하기, 빼기, 곱하기, 나누기 결과를 모두 출력하는 함수를
정의하고 main함수에서 호출하는 프로그램 작성
public static int cal(char oper, int a, int b) {
switch(oper) {
case '+' : return a+b;
case '-' : return a-b;
case '*' : return a*b;
case '/' : return a/b;
default : return 0;
}
}
public static void main(String[] args) {
int result = cal('+',5,10);
System.out.println(result);
public static int cal(char oper, int a, int b) {
if(oper=='+') return a+b;
} else if (oper=='-') return a-b;
} else if (oper=='*') return a*b;
} else if (oper=='/') return a/b;
} else return 0;
}
}
public static void main(String[] args) {
int result = cal('+',5,10);
'KDT > Java' 카테고리의 다른 글
231127 Java (0) | 2023.11.27 |
---|---|
231123 Java (0) | 2023.11.23 |
231120 Java (0) | 2023.11.20 |
231116 Java (0) | 2023.11.17 |
231115 Java (0) | 2023.11.17 |