재귀메소드, Recursive Method. 메소드가 자기자신을 호출하는 구조의 메소드 파일/폴더(디렉토리) 구조를 제어할 때 사용 트리구조 자료형을 탐색할 때. 코딩에서 말로 설명하는 것은 별로 의미가 없으니 예제를 보시죠. 팩토리얼(Factorial)123public int factorial(int n){ return (n>=1) ? n*factorial(n-1) : 1;}Colored by Color Scriptercs 대표적인 재귀메소드인 fatorial을 구현한 메소드입니다. 자연수가 들어가면 자연수 -1 씩 곱하면서 해당 값을 반환하는 메소드입니다.return문을 보면 자연수조건에 만족하지 않은 숫자가 들어오면 1을 반환하게 해서 결국 return 되게 만들었습니다. 물론 자연수라고 판단되는 ..
메소드, 메서드(Method)main메소드 특별한 메소드프로그램이 시작되자 마자 가장 처음으로!!! 자동으로 호출되는 메소드 (JRE,VM에 의해 호출)프로그램 시작점(Start Point) ~ 프로그램 종착점(End Point)main: 예약어임. 즉 키워드. 메소드, Method- 특정 행동을 목적으로 하는 코드의 집합- 행동(Behavior)- 반복되는 코드의 집합 -> 코드의 재사용. 메소드를 만들어야하는 경우!!1. 같은 성격의 코드가 모여있는 경우. >> 코드의 가독성 개선2. 같은 성격의 코드가 2번이상 사용되는 경우. >> 메소드 재사용 요구사항 : "안녕하세요"라는 인삿말을 5번 화면에 출력. 123456public static void hello(){ //메서드 헤더(==메서드 시그니처..
입출력 클래스, "BufferedReader" 사전작업1. throws Exception 2. 클래스 임포트, Class Import- import java.io.BufferedReader;- import java.io.InputStreamReader; 클래스 선언BufferedReader reader = new BufferedReader(new InputStreamReader(System.in)); System.out.println("문자를 입력하세요."); // Label //reader 는 입력도구랍니다.String txt = reader.readLine();// == System.in.read()와 같은기능 System.out.println(txt);txt = reader.readLine(); S..
에러, Error ( 오류, 버그Bug, 예외Exception ) - 컴파일러가 발견.- 컴파일 작업 시 발견.- 컴파일러가 에러 메시지 출력.- 난이도 낮음. 수정 쉬움- 문법 틀림- 이 에러가 발생하면 컴파일 작업이 중지 -> 실행 파일 생성 중지 -> 고객에게 잘못된 프로그램이 전달될 확률이 없다. - Runtime : 프로그램 실행중...- 컴파일 때 발견 X -> 실행중 발견 O : 문법적으로는 에러가 아님.- 예외(Exception) - 발생빈도 높음- 발견 어렵다. 수정 어려움.- JRE(VM) : 에러 메시지 출력 => XXXException 에러.- 베타테스트를 통해서 잡는 경우- 에러메시지를 모아두는 파일을 따로 만들어두는 것도 에러방지..
연산자, Operator- 피연산자(Operand)를 대상으로 미리 정해진 연산(계산, 행동)을 한 후에 결과값을 반환하는 역할(기호로 표현)ex) int sum = 1+2+3-1; 1. 산술연산자- +, -, *, /, %(나머지, mod)- 피연산자의 개수 2개 -> 이항연산자 - 정수에서 정수를 나눔 => 정수- 실수에서 실수를 나눔 => 실수. 12345678910111213141516171819class HelloWorld{ public static void main(String[] args){ int a = 10; int b = 3; System.out.println(10 / 3); //[3] System.out.println(10.0 / 3.0); //[3.33333333335] System..
Casting(형변환) 형변환, 자료형 변환, Type Casting- A라는 자료형을 B라는 자료형으로 바꾸는 작업.- ex) (B)A; -> ()소괄호를 "형변환 연산자"라고 한다. 1. 암시적 형변환- 1칸 => 2칸..- 작은형 => 큰형- 100% 안전한 작업! 123456789class HelloWorld{ public static void main(String[] args){ byte b1 = Byte.MIN_VALUE; //원본 short s1; //복사본 s1 = /*(short)*/b1; // b1앞에 (short)가 생략된 표현임. }}Colored by Color Scriptercs 2. 명시적 형변환l1 = 1000;n1 = (int)l1;s1 = (short)l1;b1 = (by..
자바 입출력 콘솔 출력1. print 메소드 : 개행이 없음. 2. println 메소드 : 개행이 이루어짐 - print line 의 약자임3. printf 메소드(***) : 미리 정해진 **형식 문자**를 통해서 내용을 출력 - print format의 약자임 형식문자a. %s : String의 약자b. %d : Decimal -> 정수(byte, short, int, long)c. %f : Float -> 실수(float, double)d. %c : Char e. %b : Boolean System.out.print("하나");System.out.print(100);System.out.print(true);System.out.print('A'); - 요구사항 : 홍길동에게 인사하세요.String ..
Escape Escape Sequence 특수문자, 제어문자-특정한 행동을 하도록 미리 약속되어 있는 문자(char) 1. \n : new라인, 개행문자, 행을 바꿔라(=엔터) String txt1="안녕하세요. \n홍길동님";System.out.println(txt1); 2. \r : carriage return, 키보드(Enter), 현재 캐럿(커서)의 위치를 현재라인의 맨 처음으로 이동, 키보드의 Home키를 누르는경우와 같음\r\n : 현재의 엔터키와 같은 역할 String txt2 = "하나둘셋넷\r\n다섯여섯";System.out.println(txt2); 3. \b : backspace의 약자 String txt3 = "수\b우미양가";System.out.println(txt3); 4. \t..