자바실전_Day_09_01(메소드)
-----------------------------------------------------------------------------------
1번째 예제
showPrint(3); //메소드 호출
//showPrint(전달인자,아규먼트)
}//end of main
//메소드를 정의
//int num = 매개변수,파라미터
public static void showPrint(int num) {
for(int i=1; i<=num; i++) {
System.out.println(i+"번 출력합니다.");
}
}
-----------------------------------------------------------------------------------
2번째 예제
showPrint2(3,"신나는"); //메소드 호출
//showPrint(전달인자,아규먼트)
//두 정수를 넘겨주고 그 곱셈 결과를 되돌려 받아서 출력
int result = multipleReturnResult(5,4); //메소드명(넘겨주는 값1, 넘겨주는 값2) 메소드를 호출
System.out.println(result);
}//end of main
//메소드를 정의 - 위로부터 두 정수를 넘겨받아서 그것을 가지고 곱샘을
//한다음 그 결과를 위로 넘겨주기
private static int multipleReturnResult(int num1, int num2) {
int multiplResult = num1 * num2;
return multiplResult; // 결과를 리턴(=반환) //int형으로 정의했기때문에, 리턴을 해줘야한다.
}
//# 메소드를 정의
public static void showPrint2(int count, String str) {
for(int i =1; i<=count; i++) {
System.out.println(str);
}
return;//일반적으로 생략하고 쓴다.
}
//public static = public static void main과 public static은 일치해야한다. ex)private로 쓰지않는다.
//void(타입형) = ex)int, String, 등등 void는 리턴하지 않는다.
//showPrint2 = 메소드이름(용도에 맞는임의로 만들어라)
//int count, String str = 매개변수(파라미터)라고 부르고, 메소드에 필요한 재료들을 넣어준다고 생각하면 된다.
-----------------------------------------------------------------------------------
3번째 예제
//void:일처리만하고 return은 하지않는다.
showInfo(); //메소드 호출
System.out.println("---------------------");
printShow(100);//메소드 호출
System.out.println("---------------------");
//# 1. 1~5 까지의합
System.out.println("1 ~ 5 까지의 합 : " + sumCall(1, 5));
// sumCall()메소드를 호출한 것이다.
// 1, 5 (이 숫자들)을 전달인자 라고 부른다.
//매개:어떤일을 할수있도록
//# 1. 1~10 까지의합
System.out.println("1 ~ 10 까지의 합 : " + sumCall(1, 10));
//# 1. 50~100 까지의합
System.out.println("50 ~ 100 까지의 합 : " + sumCall(50, 100));
//# 1. 35~75 까지의합
System.out.println("35 ~ 75 까지의 합 : " + sumCall(35, 75));
}//end of main
public static int sumCall(int start, int end) {//start,end 를 매개변수(파라미터)라고 부른다.
int sum =0;
for(int i=start; i<=end; i++) {
sum = sum+i; //sum+=i;
}
//sumCall : 메소드
// int : 타입(정확하게 넘겨주는 값) - 반환타입
//자동으로 형변환(데이터 손실이 없는)이 되는 것은 형이 달라도 된다 .ex) int와 double
//start: 변수
//static 메소드, static메인메소드가 일치해야한다.
return sum; //나를 부른곳으로 sum값을 가지고 되돌아간다.
}//end of method
public static void showInfo() {//호출만하고 결과값을 받지 않기를 원할때
System.out.println("이곳은 리턴 값이 없는 것을 연습");
}
public static void printShow(int num) {
//int num; //1)지역변수,2)(매개변수,파라미터)
int sum = 0;
for(int i =1; i<=num; i++) {
sum +=i;
}
System.out.println("1 ~" + num +"까지의 합 : " + sum);
return; //가져가는 값이 없을 뿐이지, 생략되었다.
//return 자기가 소속되어있는 메소드를 끝내다(빠져나간다.)라는 뜻.
//break = 자기가 속해 있는 반복문을 끝내다(빠져나간다.)
}