D+07::메소드 마무리

Am.Vinch·2022년 7월 8일
0

//메소드(Method)
//main메소드의 첫 줄부터 차례대로 마지막줄까지 실행된다.
//주의!!!main 메소드의 안에 있는 것만 출력이 된다.!!!
//메소드 - 원하는 기능이 정의되어있는 상자

//메소드를 사용하려면 1.메소드를 정의하고 2.메소드를 메소드안에서 호출해야한다.---메소드의 선언과 호출이 모두 있어야 사용 가능!!!
//메소드의 정의는 클래스 안, 메소드 밖에서 작성한
//메소드명의 명명법
//메소드명은 소문자로 작성.(변수명도 동일)
//메소드명은 숫자로 시작 못한다.(변수명도 동일)
//만약 복합어라면 카멜케이스 기법을 사용한다.(변수랑동일)---뒤에 첫글자 대문자로

//예시
//java; --> 변수
//java(); --> 메소드
//Java; --> 모두 아님
public class MethodBasic {
public static void main(String[] args) {
System.out.println("프로그램 시작");//---①출력
//메소드의 호출
sayHello();//아래 sayHello 메소드를 실행시켜라.//----②출력
System.out.println("프로그램 종료");//---③출력
}
//메소드의 선언,메소드의 정의
public static void sayHello() {
System.out.println(111); //----②출력 //단독으로 출력 x >> 주의!!!main 메소드의 안에 정의한 것만 출력이 된다.!!!

}

}

//안녕하세요를 출력하는 기능이 있는 hi라는 이름의 메소드를 정의해보세요.

public class Method01 {

public static void main(String[] args) {//main메소드
	hi();
	hello();
}
public static void hi() {//hi메소드
System.out.println("안녕하세요");//메소드 호출
}

public static void hello() {//hello메소드
	System.out.println("반갑습니다");
}

}

public class Method02 {

public static void main(String[] args) {
	int a ; //지역변수(local)
	
	
	
	tellyourName("김자바");//당신의 이름은 김자바
	tellyourName("이자바");//당신의 이름은 이자바
	
	printAge(10); //메소드 호출
	//printAge("10") >> x 오류남 이유) 정수형값이 아닌 문자형으로 들어왔기때문에 오류남.
	//printAge()     >> 오류남 이유) 정수값이 안들어왔기때문에
	//메소드 호출할때는
	//1.반드시 호출하고자하는 메소드명과 동일하게 호출해야하고 
	//2.호출하고자하는 메소드의 매개변수 정보도 같아야 한다.
	printAge(50);
}
public static void tellyourName(String name) {//매개변수 >> 메소드 안에 String name; 변수선언과 같다고 보면됨.
	
	System.out.println("당신의 이름은 " + name);
}
//예시문제
//매개변수를 나이로 전달받아 전달받은 나이를 
//출력하는 기증의 메소드를 만들어보세요.
public static void printAge (int age) { //출력기능 메소드 만들기 
	System.out.println("나이는 " + age);

}

}

public class Method03 {

public static void main(String[] args) {
	//②---메소드호출
	sum(2,6);
	
	//메소드명완전일치해야매개변수의 갯수,자료형 동일해야함.(','쉼표로 나열해야함.)				
	//메소드명은 겹칠수없다.
	//메소드를 호출 할 때는 메소드명이 동일해야하고,
	//메소드의 매개변수 정보도 일치(매개변수의 갯수,자료형)

}
//①---메소드의 정의
public static void sum(int a, int b) {//메소드명: sum //sum() 괄화안 : 매개변수
	System.out.println(a+b);
}

}

public class Method04 {

public static void main(String[] args) {
	//sum2(10,20);//30 결과를 던져주고 끝남 !!주의 >> 출력x !!
	int result = sum2(10,20);// int result = 30; 과 같다.
	System.out.println(result);
	//위와 동일하다. ==> System.out.println(sum2(10,20));
}
//매개변수로 정수 두개를 전달받아,
//전달받은 두 수의 합을 "리턴"하는 메소드
public static int sum2(int a, int b) {//" void(리턴타입,리턴되는 자료형) " 를 문제에 맞게 변경해야한다.
	return a+b;
}

//매개변수로 정수 두개를 전달받아,
//전달받은 두 수의 합을 "출력"하는 메소드
public static void sum1(int a, int b) {
	System.out.println(a+b);//출력기능
}

}

public class Method05 {

public static void main(String[] args) {
	String result = strSum("aaa "," bbb");// 출력 x 
	System.out.println(result);//출력 o

}
//매개변수로 두 문자열을 전달받아
//전달받은 두 문자열의 나열 값을 리턴하는 메소드를 만들자.
public static String strSum(String a, String b) {//문자열로 변경. void --> String
	return a + b;
}

}

public class Method06 {
//방법 1
public static void main(String[] args) {
//출력방법 ①
int result = max(1,2);
System.out.println(result);
//출력방법 ②
System.out.println(max(10,20));
}
public static int max(int a, int b) {
int maxNum = 0;//큰 정수

	if (a>=b) {
		maxNum= a; 
	}
	else {
		maxNum= b;
	}
	return maxNum;// return 메소드는 한번만 사용하는게 좋다! 최대한 사용x
}
//방법 2--- 간단하게 만들기(삼항연산자 이용)
public static int max2(int a, int b) {
	return a >= b ? a : b; // 삼항연산자: a가 b보다 크거나 같다면 a, 그렇지 않으면 b.
}

}

//예제
public class Methodex {
public static void main(String[] args) {

	//1.매개변수로 두개의 정수를 전달받아
	//전달받은 두 수의 합을 출력하라.
		
	printSum(10,20); //자동완성 누르고 tab 누르기.//예제 1번
	printSumStr("안녕", "하세요");//예제 2번
	printNameAndAge("이순신", 50);//문자형은 무조건 쌍따옴표 반드시!//예제 3번
}
	
	//1.매개변수로 두개의 정수를 전달받아
	//전달받은 두 수의 합을 출력하라.
public static void printSum(int a, int b) {//필요한 만큼 자료 넣어주면됨.(두 개의 정수)
		System.out.println(a +b);
}
	
	
	//2.매개변수로 두 개의 문자열을 전달받아
	//두 문자열의 나열한 값을 출력하는 메소드
public static void printSumStr(String a, String b) {
		System.out.println(a+b);
}
	
	//3. 매개변수로 이름과 나이를 전달받아,
	//전달받은 이름과 나이를 출력하는 메소드 
public static void printNameAndAge(String name, int age) {
		System.out.println( "이름은 " + name +"나이는"  +  age );
		
}

}

이후실습예제 계속...

profile
Dev.Vinch

0개의 댓글