JAVA method

메소드의 출력

수업소개

메소드를 실행시켰을 때 그 결과가 값이 되도록 할 수 있다면 메소드는 아주 많은 곳에서 사용할 수 있게 됩니다. 여기서는 return 키워드를 이용해서 메소드를 어떤 값의 표현식이 되도록 하는 방법을 살펴보겠습니다.

 

 

 

강의

소스코드

public class OutputMethod {
    
	public static String a() {
		// ... 
		return "a";
	}
	
	public static int one() {
		return 1;
		//...
	}

	public static void main(String[] args) {

		System.out.println(a());
		System.out.println(one());
		
	}

}

 

댓글

댓글 본문
  1. 안광민
    return을 통해 method가 return 뒤의 값이 되게 한다. 그러면 이 값을 다양한 곳에 적용할 수 있다.
    return 값이 method의 실행결과가 되고, return값은 method를 종료하는 역할을 하기도 한다.
    method에 return 값의 데이터 타입을 정해주어야 한다.

    void라는 것은 return 값이 없다는 것이므로 return 값이 없는 method를 만들 때 사용한다.

    완료
  2. 싱와
    ** 이 강의에서 핵심적으로 기억해야할것들을 정리해 보겠습니다.

    메소드라는것들이 무엇인지를 배웠다면, 메소드의 출력에 대해서 우리는 공부해보아야 하는데요,

    우리가 흔하게 코드에서 보는 return; 이라는 것들이 무엇인지에 대해서 궁금해하셨을것이라 생각이 듭니다.
    return **; 가 뜻하는것은 메소드의 실행결과 값이 **가 된다는 뜻입니다.
    동시에 그 메소드가 종료된다고 알려주는것이기도 하지요. 그래서 리턴뒤에 아무리 씨부려도 그 코드들은 죽은 코드들이 됩니다. 실행이 안돼요.

    이런 메소드는 출력을 위해서 조건을 가지고 있는데요,

    메소드는 메소드의 리턴값이 어떤 자료형으로 리턴되는지에 대해서 초반에 적시해주어야 합니다.
    public static String ~() {} , public static int ~() {}, 와 같이 메소드는 어떤 값으로 출력이 되는것이기 때문에 그 값에 대한 자료형을 명기해주어야 해요.
    근데 return 값을 지정해주지 않을 때에는 자료형의 자리에 우리가 그렇게 많이 보아왔던 public static void , void 를 써주면 됩나다.

    자, 이런 메소드의 리턴값으로 출력되는 형태가 왜 중요하나? 라고 물을수 있겠지요, 영상도 점점 어려워지기도 하고. 뭔소린지도 모르고 멍때릴때도 많구요.

    정신 바짝 차려 강의를 듣다보면 우리는 지금까지 항상 sysout, sout 형태로 화면에 출력하는 코드들을 중점적으로 다루었음을 보게 됩니다.
    즉, 화면에 출력하는것 그 이상의 코드 재활용성이 떨어지게 된다는것이지요. 화면을 출력하는 것으로 끝난거니까요 그친구는.

    그런데, 리턴값을 가지는 메소드는 sysout형태로 존재하는것이 아니라 하나의 "값"으로 존재하기 떄문에 어디다가 가져다가 써도 만사 오케이의 재활용성을 확보하게 됩니다.
    그래서 여러군데서 쓸 수 있는거고, 강의에서 보여주신 예시는 이런 값들이 실제로 이렇게 쓰일 수 있다는것을 보여주신겁니다.

    그래서 정리를 좀 하자면,
    1. 메소드는 입력값이 있습니다. 그리고 그것을 처리해서 출력해줍니다.
    2. 이런 출력을 위해서 사용하는 핵심 키워드는 return 이고, 이런 리턴에서 사용되는 값의 자료형을 앞서 메소드가 시작될때 명기해주어야 합니다. (리턴값 지정 안해줘도 되는건 void로 작성합니다.)
    3. return 값을 가지고는 메소드는 메소드의 재사용성이 높아집니다.
  3. 포기금지
    메소드는 입력 값이 있고, 그것을 처리해서 출력해 준다.
    출력해주는 핵심적인 키워드는 retrun이다.
    *retrun을 사용할 때 인자를 어떤 데이터 타입으로 출력 시킬 것인지 입력해 주어야한다.
  4. 선대범
    return의 자료형을 void대신에 쓴다.
  5. Jeongwon
    쌍따옴표 안에 공백 문자를 넣으면 공백 문자를 가진 문자열이 될 것이고, 여기에서는 out이라는 String 변수를 초기화할 목적으로 공백 없이 ""; 이렇게만 쓴 것 같아요.
    대화보기
    • hyuna lee
      감사합니다.
    • 넘무
      String out ="";
      이렇게 하면 빈칸인 문자열이 되는건가요?
    • christinelee
      06192020 어렵네요......흑흑
    • 감사합니다.
    • 완료
    • 임지수
      2020.01.31 완료
    • serina
      이번 강의는 왜이렇게 이해도 안되고 집중도 어려운지 ㅠㅠ두번봐도 여전하네요. 일단 다음 강의 듣고 다시 들어보려구요!
    • 라또마니
      아~ 보긴 했는데 , 드디어 강의 도중 딴 생각을 하고 있네요... 어렵나봐요~~
    • 이기호
      강의 감사합니다!
    • 쑤우
      수강완료. 감사합니다.
    • 박정운
      out.txt를 열어봤는데 text와 delimeter가 줄바꿈 단위("\n")로 구분되어있지 않았습니다.

      twoTimes 함수에서 "\n"을 "\r\n"으로 바꾸면 메모장에서도 줄바꿈 단위로 구분되어 저장이 됩니다.
    • 허공
      감사합니다!
    graphittie 자세히 보기