재귀 메서드 (Recursive Method) 재귀 구조를 가진 메서드이다. 즉 메서드 구현부에서 자기 자신을 호출하는 메서드 파일 디렉토리 구조와 트리 구조에서 많이 사용함 예제 ) 팩토리얼 메서드를 구현하시오 public static void main(String[] args) { int n = 4; int result = factorial(n); //factorial 블럭 후 F3 누르면 선언된 위치로 이동 printFactorial(n, result); } //main public static int factorial(int n) { return (n == 1) ? 1 : n * factorial(n-1); } public static void printFactorial(int n, int res..
메서드(Method) 코드의 집합 같은 목적을 가진 코드의 집합 코드 재사용의 단위 메서드는 클래스 내부에서 선언해야 하며 메서드 구성 메서드는 헤더(header) 와 서명(Signature) 존재 접근지정자 , 정적키워드 , 반환타입 , 메서드명 , 인자리스트(){ 구현부 } 형태로 구성이 되어있음 예시 public static void main(String[] args) { printnumber(); } public static void printnumber(){ System.out.println("하나"); System.out.println("둘"); System.out.println("셋"); System.out.println("넷"); System.out.println("다섯"); System...
비교 연산자 비교 연산자에는 대표적으로 초등수학에서도 나오는 부등호 >, 60)); 25라는 변수가 18이상 , 60 미만이므로 첫번째는 true 두 번째 println 출력에 있는 조건 60보다 age 높다는 기준을 못 맞췄으므로 false가 출력이 된다. 대입 연산자, 할당 연산자 =,+=,-=,/=,%=이 존재하며 왼쪽과 오른쪽 자료형이 일치하지 않으면 동작하지 않는다 (모든 연산자가 순서가 같을 경우)연산은 무조건 오른쪽에서 왼쪽으로 간다 예시) int m1 = 100; int m2; int m3; m3 = m2 = m1; System.out.println(m2); System.out.println(m3); 값을 m1에만 100을 주었으나 m2와 m3 출력시 모두 100을 가지고 있음을 알 수 있..
연산자 (Operator) 프로그래밍 연산자와 피연산자를 대상으로 미리 정해진 연산을 한 후 연산 결과를 반환하는 역할 사칙연산 기호 + %(mod) 같은 기호 또는 단어 사용함 연산자 구성 문장 표현식 연산자 피연산자 연산자 우선 순위 연산자 우선 방향 문장 1개 이상의 표현식이 모여 문장을 만듬 int sum = 10 + 20; 표현식 문장 구성하는 최소 단위 int sum // 1 10+20 // 2 sum = 30// 3 //총 3덩이의 표현식 연산자 대표적으로 "+ - * / %" 존재 피연산자 위의 식에서 피연산자는 10,20 같은 연산자를 통해 이루어지는 존재를 의미 연산자 우선 순위 사칙 연산 순서와 같음 (1+2 * 3 이 7이 나오는 것처럼) 연산자 연산 방향 하나의 문장 속에서 연산자..
자료형 변환 암시적 형변환 (Promotion) 과 명시적 형변환(Casting)이 존재하며 하나의 자료형을 다른 자료형으로 변환 시키는 작업 코드 작성을 유연하게 하기 위해 사용됨 암시적 형변환 (자동 형변환) (Promotion) 큰 자료형 = 작은 자료형; 의 구조로 에러 없이 당연하게 되는 형태임 예시) public class ttttt { public static void main(String[] args) { byte b1; short s1; b1 = 10; s1 = b1; System.out.println(s1); } } 이는 컴파일러 자체에서 컴파일을 할 때 s1 = (short)b1;의 형태로 변환하여 출력하기 때문에 앞에 형변환을 작성하지 않아도 자동적으로 가능하다. 명시적 형변환(강제..
Input (입력) 콘솔의 입력을 받는 경우 System.in.read() 를 통해 받을 수 있다 (단, 1byte만 받아 올 수 있음 -> 한글은 2byte이므로 한글은 안 됨 ) 예시) public class ttttttt { public static void main(String[] args) throws IOException { System.out.print("문자 입력: "); int code = System.in.read(); System.out.println("출력 : " + code); }//mAIN } 이렇게 a의 char 값인 97이 출력이 된다 . 하지만 이런 방식은 너무 복잡하기에 잘 사용하지 않으며 BufferedReader 또는 Scanner 를 통해 작업을 한다 . Buffer..