메소드(Function 함수)
한가지 기능을 갖는 하인(slave)
어떤 기능이 여러번 반복하고자 할때 메소드를 만들어쓰면 편하다.
특징
( )가 존재. 독자적으로 실행 못함. 반드시 불러줘야됨.
종류
1. 인수가 없고 리턴값이 없는 방식
2. 인수가 없고 리턴값이 있는 방식
3. 인수가 있고 리턴값이 없는 방식
4. 인수가 있고 리턴값이 있는 방식
객체를 던지면 객체를 만든 클래스로 받아야된다.
package day7_Method;
public class Method_Test {
public static void main(String[] args)
{
dol();
dolwife();
}
private static void dol() {
System.out.println("돌쇠야!!마당을 쓴다!!");
}
private static void dolwife() {
System.out.println("아침을 준비!!");
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//특정메소드를 만들어서 본인 이름을 5번 인쇄
name();
}
private static void name() { //어떠한 기능...이름을 5번 인쇄
String name="홍길동";
for(int i=1;i<=5;i++)
{
System.out.println(name);
}
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//특정메소드를 만들어서 두수를 입력받아서 합을 알려줘~
int cc= hapcall();
System.out.println("합 = "+cc);
}
private static int hapcall() {
int a,b,c;
a=50;
b=40;
c=a+b;
return c;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//특정메소드를 만들어서 점심메뉴를 알려주세요
String food = howlunch();
System.out.println("오늘 점심 : "+food);
}
private static String howlunch() {
String food;
food="짜장면";
return food;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//특정메소드를 만들어서 콜라 사먹어
foodeat(1000); //인수 전달되는 값
}
private static void foodeat(int a) {//매개변수는 자료형타입과 갯수가 반드시 일치
System.out.println(a+"원으로 콜라 사먹었다");
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//특정메소드 한테 이름을 넘겨주면서 그 이름을 5번 인쇄
String name="홍길동";
namecall(name);
}
private static void namecall(String name) {
for(int i=1;i<=5;i++)
{
System.out.println(name);
}
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//두수를 입력받아 합을 출력하는 메소드를 생성!!
hapcall(90,50);
}
private static void hapcall(int a, int b) {
int c = a+b;
System.out.println("합은 = "+c);
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//두수를 입력받아 합을 출력하는 메소드를 생성!!
int c = hapcall(90,50);
System.out.println("합은 = "+c);
}
private static int hapcall(int a, int b) {
int c = a+b;
return c;
}
}
package day7_Method;
import java.text.DecimalFormat;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//메소드 예제1)이름,국어,영어,수학=>총점과 평균
Scanner sc=new Scanner(System.in);
String name;
int kor,eng,math;
System.out.println("이름을 입력하시오");
name=sc.nextLine();
System.out.println("국어 점수를 입력하시오");
kor=sc.nextInt();
System.out.println("영어 점수를 입력하시오");
eng=sc.nextInt();
System.out.println("수학 점수를 입력하시오");
math=sc.nextInt();
name(name);
jumsu(kor,eng,math);
}
private static void name(String name) {
System.out.println("이름 : "+name);
}
private static void jumsu(int kor, int eng, int math) {
DecimalFormat df = new DecimalFormat("#,##0.00");
int tot=kor+eng+math;
double avg=(double)tot/3;
System.out.println("총점 : "+tot+" 평균 : "+df.format(avg));
}
}
package day7_Method;
import java.text.DecimalFormat;
public class Method_Test {
public static void main(String[] args) {
//메소드 예제1)이름,국어,영어,수학=>총점과 평균
String name = "홍길동";
int kor=65,eng=78,math=93;
//총점 메소드
int tot = total(kor,eng,math);//총점을 구하는 메소드..입력값..인수3
//평균메소드
double avg = average(tot);//평균을 구하는 메소드
//학점메소드
String hak = hakjum(avg);
DecimalFormat df =new DecimalFormat("#,##0.00");
System.out.println("이름 : "+name);
System.out.println("국어 : "+kor);
System.out.println("영어 : "+eng);
System.out.println("수학 : "+math);
System.out.println("총점 : "+tot);
System.out.println("평균 : "+df.format(avg));
System.out.println("학점 : "+hak);
}
private static int total(int kor, int eng, int math) {
return kor+eng+math;
}
private static double average(int tot) {
return (double)tot/3;
}
private static String hakjum(double avg) {
String hak;
switch ((int)avg/10)
{
case 10:
case 9:hak="A";break;
case 8:hak="B";break;
case 7:hak="C";break;
case 6:hak="D";break;
default:hak="F";break;
}
return hak;
}
}
package day7_Method;
import java.text.DecimalFormat;
public class Method_Test {
public static void main(String[] args) {
//두수를 입력해서 메소드를 몫과 나머지를 구하는
int a,b,max,min;
a=20;
b=99;
if(a>b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
int mok = mok(max,min);
int na = na(max,min);
System.out.println(max+" / "+min+" = ");
System.out.println("몫 = "+mok + " 나머지 = "+na);
}
private static int mok(int max, int min) {
int mok=max/min;
return mok;
}
private static int na(int max, int min) {
int na=max%min;
return na;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//두 수를 특정 메소드를 넘겨서 작은수~큰수까지의 합을 구하는 프로글매을 작성
int a,b,max,min;
a=1;
b=100;
if(a>b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
hapcall(max,min);
}
private static void hapcall(int max, int min) {
int sum=0; //합을 기억하는 누적장소
for(int i=min;i<=max;i++)
{
sum=sum+i;
}
System.out.println(min+"~"+max+" 합 = "+sum);
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//두수를 메소드 한테 넘겨주면 합을 구해서 합은 반환 받아 출력
int a,b;
a=21;
b=54;
int sum =hap(a,b);
System.out.println("두수의 합은 "+sum);
}
private static int hap(int a, int b) {
int sum=a+b;
return sum;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//두수를 넘겨받아 큰수만 출력
int a,b;
a=99;
b=21;
int bigger = big(a,b);
System.out.println("큰 수는 "+bigger);
}
private static int big(int a, int b) {
int bigger;
if(a>b)
{
bigger=a;
}
else
{
bigger=b;
}
return bigger;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//어떤 문자열을 넘기면 그 문자열의 글자수를 반환시키는 메소드 생성
String sample;
sample="우리나라 좋은나라 새나라의 어린이는";
int count = count(sample);
System.out.println("입력값의 글자 수는 "+count+"글자");
}
private static int count(String sample) {
int count=sample.length();
return count;
}
}
package day7_Method;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//점수를 넘겨주어 결과를 반환받아 출력
//점수가 90이상이면 "우수" 70~89 "보통" 69이하면 "노력요함"
int a;
Scanner sc = new Scanner(System.in);
System.out.println("점수를 입력하시오");
a=sc.nextInt();
String grade = grade(a);
System.out.println("점수의 결과는 "+grade);
}
private static String grade(int a) {
String grade;
switch (a/10) {
case 10:
case 9:grade="우수";break;
case 8:
case 7:grade="보통";break;
default:grade="노력요함";break;
}
return grade;
}
}
package day7_Method;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//점수를 넘겨주어 결과를 반환받아 출력
//점수가 90이상이면 "우수" 70~89 "보통" 69이하면 "노력요함"
int a;
Scanner sc = new Scanner(System.in);
while(true)
{
System.out.println("점수를 입력하시오");
a=sc.nextInt();
String grade = grade(a);
System.out.println("점수의 결과는 "+grade);
System.out.println("계속할까요?(Y/N)");
String q;
q=sc.next();
if(q.equals("N")||q.equals("n")||q.equals("ㅜ"))
{
break;
}
}
}
private static String grade(int a) {
String grade;
switch (a/10) {
case 10:
case 9:grade="우수";break;
case 8:
case 7:grade="보통";break;
default:grade="노력요함";break;
}
return grade;
}
}
객체를 던지면 객체를 만든 클래스로 받아야된다.
package day7_Method;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//메인 메소드에서 이름을 키보드로 입력받고 다른메소드 전달하며 다른 메소드에서는
//전화번호를 입력받아 이름과 전화번호를 출력
String name;
Scanner sc = new Scanner(System.in);
System.out.println("이름을 입력하시오");
name=sc.nextLine();
sub(name,sc);
}
private static void sub(String name,Scanner sc) {
String phone;
System.out.println("전화번호를 입력하시오");
phone=sc.nextLine();
System.out.println("이름 : "+name);
System.out.println("전화번호 : "+phone);
}
}
package day7_Method;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//두수를 넘기면 작은수 ~큰수까지에서 5의 배수의 갯수를 구하여 반환하는 메소드 생성
int a,b,max,min;
a=1;
b=9;
if(a>b)
{
max=a;
min=b;
}
else
{
max=b;
min=a;
}
int count = check(min,max);
System.out.println(min+" ~ "+max+"까지의 5의 배수 갯수 : "+count+"개");
}
private static int check(int min, int max) {
int count=0;
for(int i=min;i<=max;i++)
{
if(i%5==0)
{
count++;
}
}
return count;
}
}
package day7_Method;
import java.util.Scanner;
public class Method_Test {
public static void main(String[] args) {
//어떤수를 넘겨받아서 그수가 짝수이면 10을 더하고 홀수이면 1을 더하여 반환..
int a;
a=18;
int b = sample(a);
System.out.println(a+"에서 반환된 값은 "+b);
}
private static int sample(int a) {
int b=0;
if(a%2==0)
{
b=a+10;
}
else
{
b=a+1;
}
return b;
}
}
package day7_Method;
public class Method_Test {
public static void main(String[] args) {
//1.어떤수를 넘겨받아서 그수가 짝수이면 10을 더하고 홀수이면 1을 더하여 반환..
//2.문자열을 넘겨 길이가 10이하면 "짧은 문자열이다" 아니면 "긴 문장"
String a;
a="우리나라우리나라우리나라우리나라";
int check1 = check1(a);
String check = check(a);
System.out.println(a+" 는 "+check1+"글자이고, "+check);
}
private static int check1(String a) {// 글자갯수
int check1=a.length();
return check1;
}
private static String check(String a) {// 짧은or긴 문장구분
String check;
if(a.length()<=10)
{
check="짧은 문자열이다";
}
else
{
check="긴 문장이다";
}
return check;
}
}
'JAVA' 카테고리의 다른 글
221215_Class (0) | 2022.12.15 |
---|---|
221214_Method,Class (0) | 2022.12.14 |
221212_배열 (0) | 2022.12.12 |
221209_For문 (0) | 2022.12.09 |
221208_For문 (0) | 2022.12.08 |
댓글