Backend/Java

    자바의 정석 정리(23) - String 배열 ②

    char 배열과 String 클래스 문자열이라는 용어는 '문자를 연이어 늘어놓은 것'을 의미하므로 문자배열인 char 배열과 같은 뜻임을 의미 String 클래스는 char 배열에 기능(메서드)을 추가한 것 char 배열과 String 클래스의 한 가지 중요한 차이는 String 객체(문자열)는 읽을 수만 있을 뿐 내용을 변경할 수 없다는 것 String 클래스의 주요 메서드 char charAt(int index) : 문자열에서 해당 위치(index)에 있는 문자를 반환한다. int length( ) : 문자열의 길이를 반환한다. String substring(int from, int to) : 문자열에서 해당 범위(from ~ to)에 있는 문자열을 반환한다. (to는 범위에 포함되지 않음) bool..

    자바의 정석 정리(22) - String 배열 ①

    String 배열 String 배열의 선언과 생성 ex) String[ ] name = new String[5]; // 5개의 문자열을 담을 수 있는 배열을 생성 (null : 어떠한 객체도 가리키고 있지 않다는 뜻) 변수 타입에 따른 기본값 boolean = false char = '\u0000' byte, short, int = 0; long = 0L float = 0.0f double = 0.0d or 0.0 참조형 변수 = null String배열의 초기화 ex1) String[ ] name = new String[3]; name[0] = "Kim"; name[1] = "Lee"; name[2] = "Park"; ex2) String [ ] name =new String [ ] { "Kim", "..

    자바의 정석 정리(21) - 배열

    배열(array) 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것 (서로 다른 타입의 변수들로 구성할 수 없음) 배열의 선언과 생성 원하는 타입의 변수를 선언하고 변수 또는 타입에 배열임을 의미하는 대괄호 [ ] 를 붙인다 배열의 생성 배열 선언 : 생성된 배열을 다루기 위한 참조변수를 위한 공간이 만들어진것 ex) 타입[] 변수이름; int[ ] score; // 배열 선언 (배열을 다루기 위한 참조변수 선언) 배열 생성 : 값을 저장할 수 있는 공간을 만드는 것, 배열을 생성하려면 연산자 'new'와 함께 배열의 타입과 길이를 지정한다 ex) 변수이름 = new 타입 [ 길이 ] // 배열 생성 (실제 저장공간을 생성) score = new int [5]; 배열의 길이와 인덱스 배열의 요소(ele..

    자바의 정석 정리(20) - 반복문 ②

    while문 조건식을 평가해 조건식이 거짓이면 문장 전체를 벗어나고, 참이면 블럭 { } 내의 문장을 수행하고 다시 조건식으로 돌아간다 (조건식이 거짓이 될 때까지 이 과정이 반복) ex) while (조건식) { // 수행될 문장 } ※ while문의 조건식은 생략할 수 없음 do-while문 while문의 조건식과 블럭의 순서를 바꿔놓은 것 (최소한 한 번은 블럭이 수행된다) do { // 조건식의 연산결과가 참일 때 수행될 문장들을 적는다 } while (조건식); // while문과 다르게 세미콜론( ; ) 필수 Math.random() : double타입 0 ~ 1까지의 실수를 랜덤으로 표시 break문 자신이 포함된 가장 가까운 반복문을 벗어남 break문이 수행되면 다음 문장은 실행되지 않고..

    자바의 정석 정리(19) - 반복문 ①

    for 문 반복 횟수를 알고 있을 때 적합 for 문의 구조와 수행순서 for 문은 초기화, 조건식, 증감식, 블럭 총 4부분으로 이루어져 있다 ① 초기화 수행 (조건식이 참인 동안) ② 조건식 -> ③ 수행될 문장 -> ④ 증감식 초기화 반복문에 사용될 변수를 초기화하는 부분, 처음 한 번만 수행 둘 이상의 변수가 필요할 경우 콤마( , )를 구분자로 사용하면 된다 조건식 조건식의 값이 참이면 반복을 계속, 거짓이면 반복을 중단하고 for 문을 벗어난다 증감식 반복문을 제어하는 변수의 값을 증가 또는 감소시키는 식, 매 반복마다 변수의 값이 증감식에 의해서 점진적으로 변하다가 결국 조건식이 거짓이 되어 for 문을 벗어나게 된다 이 세 가지 요소(초기화, 조건식, 증감식)는 필요하지 않으면 생략할 수 ..

    자바의 정석 정리(18) - 조건문

    제어문(control statement) : 프로그램의 흐름을 바꾸는 역할을 하는 문장들 조건문 - if, switch 조건식의 연산결과에 따라 실행할 문장이 달라져서 프로그램의 실행흐름을 변경할 수 있음 처리할 경우의 수가 많을 때는 switch문이 효율적, but if문보다 제약이 많음 if문 만일(if) 조건식이 참(true)이면 괄호 {} 안의 문장들을 수행하라는 의미 ex) if (조건식) { // 조건식이 참(true)일 때 수행될 문장들을 적는다 } ※ 자바에서 조건식의 결과는 반드시 true or false이어야 한다 블럭 { } : 괄호 { } 를 이용해서 여러 문장을 하나의 단위로 묶을 수 있는 것 switch문 하나의 조건식으로 많은 경우의 수를 처리 할 수 있음 ① 조건식 계산 ② ..

    자바의 정석 정리(17) - 논리, 그 외 연산자

    논리 연산자( &&, ||, ! ) 피연산자로 boolean형 또는 boolean형 값을 결과로 하는 조건식만을 허용 || (OR결합) : 피연산자 중 어느 한 쪽만 true이면 true를 결과로 얻는다 && (AND결합) : 피연산자 양쪽 모두 true를 결과로 얻는다 OR연산 '| |' 의 경우 좌측 피연산자가 true(참)이면 우측 피연산자의 값은 평가하지 않는다 (x가 true이면 x | | y는 항상 true이다) AND연산 '&&'의 경우 좌측 피연산자가 false(거짓)이면 우측 피연산자의 값은 평가하지 않는다 (x가 false이면 x && y는 항상 false이다) 논리 부정 연산자 ( ! ) 피연산자가 true이면 false, false면 true를 결과로 반환 (true와 false를 ..

    자바의 정석 정리(16) - 비트 연산자

    비트 연산자( &, |, ^, ~, ) 비트 연산자는 피연산자를 비트단위로 논리 연산 | (OR연산자) : 피연산자 중 한쪽의 값이 1이면 1을 결과로 얻음, 그 외에는 0을 얻음 &(AND연산자) : 피연산자 양 쪽이 모두 1이어야만 1을 결과로 얻음, 그 외에는 0을 얻음 ^(XOR연산자) : 피연산자의 값이 서로 다를 때만 1을 결과로 얻음, 그 외에는 0을 얻음 (연산자 '^'는 배타적 XOR(eXclusive OR) 피연산자 값 서로 배타적인 경우에만 참(1)을 얻음) 비트 연산에서도 피연산자의 타입을 일치시키는 산술 변환이 일어날 수 있다 toBinaryString() : 4byte의 정수를 32자리의 2진수로 변환하여 출력 비트 전환 연산자 ( ~ ) 피연산자를 2진수로 표현했을 때 0은 1..