자바 28

[Java] 8. 배열

*배열 예제코드는 다음 글에 게시 1. 일차원 배열 같은 타입의 변수 여러개를 하나로 묶어서 다루는 것 # 배열 선언 int[] array; → 여기서 array는 배열이 아닌 배열을 다루기 위한 참조변수이다. # 배열 생성 array = new int[10]; → 실제로 값을 저장할 수 있는 공간을 만든 것이다. → 배열을 생성하기 위해 new라는 예약어를 반드시 사용해야 한다. 배열 내 각 요소에 접근하기 위해 인덱스를 사용하며, 각 요소의 인덱스는 순서대로 0부터 부여된다. 또한, 배열은 생성됨과 동시에 값을 저장하지 않으면 각 타입의 기본값으로 자동 초기화된다. ※ 에러 : ArrayIndexOutOfBoundsException 인덱스의 범위가 유효하지 않다는 것으로 인덱스의 범위를 넘어가는 값을..

[Java] 7. 반복문

반복문 (for문, while문, do-while문) 어떠한 작업을 반복적으로 수행해야 할 때 사용한다. ★★★ ※ break문 : 자신이 포함된 가장 가까운 반복문을 벗어난다. 무한 반복문에서 프로그램 종료를 위해 자주 사용된다. ※ continue문 : 반복문의 끝으로 이동하여 다음 반복으로 넘어가도록 한다. for문에서 사용 시, 증감식으로 이동 while문, do-while문에서 사용 시, 조건식으로 이동 → break문과 continue문 모두 반복문에서만 사용 가능하다!! ① for문 작업의 반복 횟수를 알고있을 때 적합하다. 초기화, 조건식, 증감식, 블럭으로 이루어져 있다. # 초기화 : 반복문에서 사용할 변수를 초기화하는 부분으로 처음 한번만 수행한다. 두개 이상의 변수(동일한 타입)가 ..

[Java] 6. 조건문

조건문 (if문, switch문) 조건식의 연산결과에 따라 실행할 문장이 달라지므로 실행흐름을 변경할 수 있다. ※ 블럭 내에 문장이 하나인 경우에는 괄호를 생략할 수 있다. ① if문 가장 기본적인 조건문으로, 조건식과 블럭({ })으로 이루어져 있다. 조건식이 true이면 블럭 내의 문장들을 수행하고, false이면 수행하지 않는다. ★ if-else문 / if-else if문 else 블럭은 조건식의 결과가 false일 때 수행하며, 생략이 가능하다. else if문은 조건식이 여러 개인 경우에 사용한다. 또한, if문은 다른 if문에 포함시키는 중첩이 가능하다. 중첩의 횟수에는 제한이 없으나, 조건문을 되도록 간단하게 작성해야 함에 유의하는 것이 좋다. import java.util.Scanner..

[Java] 5. 연산자(2)

1. 비교 연산자 대소비교 연산자 ( , =) 기본형에서는 boolean형을 제외한 나머지 자료형에 사용 가능하며, 참조형에는 사용할 수 없다. 등가비교 연산자 (== , !=) 기본형과 참조형에 모두 사용 가능하다. 이때, 참조형에 사용하면 객체의 주소값을 비교하므로 사용 시 주의해야 한다. ※ 문자열 비교 두개의 문자열을 비교할 때에는 등가비교 연산자가 아닌 equals() 메서드를 사용해야 한다. Ex. String str = 'dakveloper' boolean result = str.equals("dakveloper") 결과 : true +) 자바는 대소문자를 구분하므로 문자열 비교 시 대소문자에 유의해야 한다. 대소문자를 구분하지 않고 비교하려면 equalsIgnoreCase()를 사..

[Java] 4. 연산자(1)

1. 연산자 [연산자 종류] 단항 연산자 : ++ -- + - ~ ! 산술 연산자 : * / % + - 비교 연산자 : = instanceof == != 논리 연산자 : & ^ | && || 삼항 연산자 : ?: 대입 연산자 : = += -= *= /= %= = &= ^= |= 연산자의 우선순위 ① 산술, 비교, 논리, 대입 연산자 순서로 수행한다. ② 단항, 이항, 삼항 연산자의 순서로 단항 연산자가 우선순위가 높다. ③ 단항 연산자와 대입 연산자의 진행방향은 왼→오이며, 나머지는 모두 오→왼이다. 일반 산술 변환이란? 연산이 수행되기 전에 피연산자가 자동 형변환되는 것으로 두 피연산자의 타입을 동일하게 만든다. 이때, 두 타입 중 큰타입으로 변환되며, int보다 작은 타입들의 연산인 경우 모두 int..

[Java] 3. 오버플로우, 형변환(기본)

#문자 인코딩, Encodeing 문자를 코드로 변환하는 것 # 문자 디코딩, Decoding 코드를 문자로 변환하는 것 컴퓨터에는 모든 데이터가 숫자로 저장되어 있기 때문에 사람이 이를 읽기 위해서는 문자로 변환하는 과정이 필요하다.따라서, 인코딩과 디코딩을 통해 문자와 숫자를 변환한다.Java에서는 유니코드(Unicode)라는 기준을 통해 변환 과정이 이루어진다. 유니코드는 전 세계의 모든 문자를 하나의 통일된 문자 집합으로 표현한 것이며,유니코드에 포함시키고자 하는 문자들의 집합을 정의하여 유니코드 문자 셋(=캐릭터 셋, character set)이라고 한다. 유니코드 문자 셋에 번호를 붙인 것이 유니코드 인코딩이며, 유니코드 인코딩의 다양한 졸류 중 자바는 UTF-16을 사용한다.UTF-16은 모..

[Java] 2. 진법과 2의 보수법

1. 2진법 컴퓨터에서 0과 1을 사용하여 데이터를 표현하는 방법 중 하나 비트, bit → 컴퓨터가 값을 저장할 수 있는 최소 단위, 한자리의 2진수 바이트, byte → 1비트 8개를 묶은 단위로 데이터의 기본 단위로 사용됨 +) 워드, word → CPU가 한 번에 처리할 수 있는 데이터의 크기 (CPU의 성능에 따라 크기가 정해짐) Ex.32비트 CPU는 32비트를 1워드로 가짐 2. 2진법, 8진법, 16진법 2진법은 두 개의 기호만을 사용하므로 값을 표현할 때 자리수가 길어지는 단점을 가짐 따라서, 이를 보완하기 위해 8진법과 16진법을 사용함 # 2진수를 8진수로 변환하는 방법 : 2진수를 뒤에서부터 3자리씩 끊어서 계산 Ex. 2진수 1010101101 ▶ 1/010/101/101 ▶ 12..

[Java] 1. 변수, variable

1. 변수 (variable) 값을 저장할 수 있는 메모리 상의 공간 - 지역변수는 사용 전 초기화가 필수적이며, 클래스변수와 인스턴스변수는 초기화 생략 가능 - 식별자 명명규칙 1) 대소문자를 구분하며, 길이에 제한이 없음 2) 예약어는 사용할 수 없음(ex.new, for, if, this...) 3) 숫자로 시작하면 안됨 4) 특수문자는 '_'와 '$'만 사용할 수 있음 class Num1{ int a; int b; int c,d; int x=0; //변수 초기화 System.out.println(x) //출력값 : 0 } 2. 변수의 타입 ① 기본형 변수(Primitive Type) : 실제 값을 저장하는 변수 - 논리형 → boolean true or false를 값으로 가짐 - 문자형 → ch..