// 3과 5를 더하자.
int num1 = 3;
int num2 = 5;
System.out.println(num1 + num2);
// 7과 10을 더하자.
num1 = 7;
num2 = 10;
System.out.println(num1+num2);
// 10과 6을 더하자.
num1 = 10;
num2 = 6;
System.out.println(num1+num2);
// 프로그래밍 하다보니 중복되는 코드 == 재사용되는 코드가 발생하더라
// 효율적으로 처리하기위해 만든게 함수다!
// 지금까지는 함수를 사용만 해봤다 = 함수를 호출(call) 했다 = 남이 만든것을 이용
// 함수 호출은 1줄만 필요
// 어떤 복잡한 기능이라도 함수로 만들어져있으면 1줄만 코드작성하면 된다.
// 두 정수를 더하는 함수를 만들자
메인함수 안에 X
클래스 안에 O
// 1. 함수 이름 작성
add(3,4);
// 2. 함수의 파라미터(parameters)를 만든다.
함수의 파라미터
int num1, int num2
// ===> 함수의 호출을 먼저 적는다.
// 예시 - add(3,4);
// 3. 호출 상황을 가정하여 코드를 작성
int add(int num1, int num2){
int total = num1 + num2;
// 4. return 작성한 코드 입력, 데이터타입을 함수 시작부분에 입력
int add(int num1, int num2){
int total = num1 + num2;
return total;
}
만든 함수를 func.add()로 불러오면 사용가능합니다.
System.out.println(func.add(7,10));
main() 부분에 static 입력 < Why?
public static void main(String[] args) {
main()에 아래 코드 입력 < Why?
FuncTest func = new FuncTest();
>> FuncTest타입의 새 객체를 생성하라는 연산자!
그 참조를 func 변수에 할당함
각 객체는 고유한 메모리 공간을 가지게 되어 동일한 값을 가진 객체라도 서로 다른 인스턴스로 취급됨.
// 학점 func.getGrade(100); => "A학점"
// 90점 이상 "A학점", 80점 이상 90미만 "B학점", 나머지는 "C학점"
String getGrade(int score) {
if (score >= 90) {
return "A학점";
} else if (score >= 80 && score < 90) {
return "B학점";
} else {
return "C학점";
}
}
문자열이 반환되는 함수를 만들수도 있습니다.
자바에서의 AND = &&
// 홀수 짝수 구분하는 함수
// func.isEven(); > 짝수면 true, 홀수면 false
boolean isEven(int score2){
if(score2 % 2 == 0){
return true;
} else {
return false;
}
}
// 이름과 나이를 넣으면, "제 이름은 홍길동입니다. 30살 입니다."로 화면 출력하는 함수
// func.sayHello("홍길동","30");
String sayHello(String name,int age){
return ("제 이름은 "+name+"입니다. "+age+"살 입니다.");
}