전체 글

· IT/Java
다차원 배열 배열 항목에 또 다른 배열 대입을 다차원 배열이라 한다. 변수[1차원인덱스][2차원인덱스]...[N차원인덱스] intArray[2][4]; 값 목록으로 다차원 배열 생성 배열 변수 선언 시 타입 뒤에 대괄호 {}를 차원의 수만큼 붙이고, 값 목록도 차원의 수만큼 중괄호를 중첩시킨다. 예제 코드 int[][] scores = { {70, 80, 60}, {90, 80} }; new 연산자로 다차원 배열 생성 배열 변수 선언 시 타입 뒤에 대괄호를 차원의 수만큼 붙이고, new 타입 뒤에도 차원의 수만큼 대괄호 []를 작성하면 된다. int[][] scores = new int[2][3]; 항목들은 초기값으로 지정된다. 배열의 길이를 다르게 줄 수 있다. int[][] scores = new i..
· IT/Java
배열(Array) 배열은 연속된 공간에 값을 나열시키고, 각 값에 index를 부여해 놓은 자료구조다. int 배열은 int 타입의 값만 관리하고, String 배열은 문자열만 관리한다. 배열은 생성과 동시에 길이가 결정되며, 결정된 배열의 길이는 변경할 수 없다. 같은 타입의 값만 관리 길이 변경 불가 변수 선언 int[] intArray; int intArray[]; 배열 변수 선언은 두 가지 형태로 작성할 수 있지만, 관례적으로 첫 번째 방법을 사용한다. int[] intArray = null; 배열 변수는 참조 변수로 힙 영역에 생성되고 힙 영역의 배열 주소를 저장한다. 참조할 배열이 없다면 null로 초기화 시킬 수 있다. 값 목록으로 배열 생성 int[] intArray = {1, 2, 3, ..
· IT/Java
문자열(String) 자바의 문자열은 String 객체로 생성된다. String name; name = "이름"; String hobby = "취미"; 변수에 문자열 리터럴이 대입되면 문자열은 String 객체로 생성되고, 객체의 번지가 각각 대입된다. String 타입 name 변수 선언 name 변수에 문자열 대입 String 타입 변수 hobby 선언 후 문자열 대입 문자열 비교 String name1 = "이름"; String name2 = "이름"; 자바는 문자열 리터럴이 동일하다면 String 객체를 공유한다. String name1 = new String("이름"); String name2 = new String("이름"); new 연산자로 직접 String 객체를 생성하고 대입할 수 있다...
· IT/Java
null 참조 타입 변수는 아직 번지를 저장하고 있지 않다는 뜻으로 null 값을 가질 수 있다. 초기값으로 사용할 수 있어 null로 초기화된 참조 변수는 스택 영역에 생성된다. String val1 = "Java"; String val2 = null; 변수가 null 값을 가지는지 확인하려면 ==, != 연산을 수행할 수 있다. val1 == null // false var1 != null // true NullPointerException 자바는 프로그램 실행 도중 발생하는 오류를 예외(Exception)라고 부르며, 참조 변수를 사용하며 가장 많이 발생하는 예외 중 하나는 NullPointerException이다. 변수가 null인 상태에서 객체의 데이터나 메소드를 사용할 때 예외가 발생한다. i..
· IT/Java
==, != 연산자는 변수의 값이 같은지, 아닌지 확인 가능하다. 참조 타입 변수의 값은 객체의 번지이므로 ==, != 연산자는 번지를 비교할 수 있다. 번지가 같다면 동일한 객체를 참조하는 것, 다르면 다른 객체를 참조하는 것이다. 예제 코드 public static void main(String[] args) { int[] arr1; int[] arr2; int[] arr3; arr1 = new int[]{1, 2, 3}; arr2 = new int[]{1, 2, 3}; arr3 = arr2; System.out.println("arr1 == arr2 : " + (arr1 == arr2)); // false System.out.println("arr2 == arr3 : " + (arr2 == arr3..
· IT/Java
자바의 데이터는 크게 기본 타입(primitive type)과 참조 타입(reference type)으로 분류된다. 참조 타입이란 객체(object)의 번지는 참조하는 타입으로 배열, 열거, 클래스, 인터페이스 타입이 있다.기본 타입으로 선언된 변수는 값 자체를 저장하고 있지만, 참조 타입으로 선언된 변수는 객체가 생성된 메모리 번지를 저장한다. 변수들은 모두 스택(stack)이라는 메모리 영역에 생성되며, 기본 타입 변수는 직접 값을 저장한다. 그러나 참조 타입 변수는 힙 메모리 영역의 객체 번지를 저장하고 저장한 번지를 통해 객체를 참조한다. 메모리 사용 영역 java 명령어로 JVM이 구동되면 JVM은 운영체제에서 할당받은 메모리 영역(Running Data Area)을 구분해서 사용한다. 메소드(..
· IT/Java
break break 문은 반복문인 for, while, do-while 문을 실행 중지하거나 조건문인 switch 문을 종료할 때 사용한다. for ( ... ) { ... break; } while( ... ) { ... break; } break 문은 대개 if 문과 같이 사용되어 조건식에 따라 for 문과 while 문을 종료한다. 만약 반복문이 중첩되어 있을 경우 break 문은 가장 가까운 반복문만 종료하고 바깥쪽 반복문은 종료시키지 않는다. Label : for ( ... ) { for ( ... ) { ... break Label; } } 중첩된 반복문에서 바깥쪽 반복문까지 종료시키려면 바깥쪽 반복문에 이름(레이블)을 붙이고 "break 이름;"을 사용한다. break 라벨 예제 코드 pa..
· IT/Java
while for문이 정해진 횟수만큼 반복하면, while문은 조건식이 true일 경우에 계속해서 반복하고, false가 되면 반복을 멈추고 while문을 종료한다. while( 조건식 ) { 실행문; } 조건식을 평가 평가 결과 true면 실행문 실행 실행문 실행 후 조건식으로 되돌아감 조건식 재평가 조건식이 true면 2, 3, 4 반복 실행 조건식이 false면 while문 종료 만약 조건식이 계속 true이면 while(true) { ... }가 되어서 무한 반복한다. while문을 빠져 나가기 위한 코드가 필요하다. while문 빠져 나가는 예제 코드 package ch04.sec05; import java.util.Scanner; public class KeyControlExample { pu..
· IT/Java
for for문은 조건식이 참인 동안 주어진 횟수만큼 실행문을 반복적으로 수행한다. for문은 실행문을 여러 번 반복 실행해주기 때문에 코드를 간결하게 만들어준다. for문의 구조와 흐름 for( 초기화식; 조건식; 증감식 ) { 실행문 }; for문이 처음 실행될때 초기화식이 제일 먼저 실행된다. 조건식 평가 후 true면 실행문을 실행하고 false면 for문을 종료한다. 조건식이 true면 실행문을 모두 실행 후 증감식이 실행된다. 그리고 다시 2번을 실행 후 true면 3 ➡️ 4 ➡️ 2 순서로 진행하다 false이면 for문이 종료된다. for( int i = 0, j = 1; i
· IT/Java
switch if문은 조건식의 결과가 true, false 두 가지밖에 없기 때문에 경우의 수가 많아질수록 else if를 반복적으로 추가해야 하므로 코드가 복잡해진다. 그러나 switch문은 변수의 값에 따라 실행문이 결정되기 때문에 같은 기능의 if문보다 코드가 간결해진다. switch(입력변수) { case 입력값1: ... break; case 입력값2: ... break; ... default: ... break; } 괄호 안의 변수값에 따라 해당 case로 가서 실행문을 실행시킨다. 변수값과 동일한 값을 갖는 case가 없다면 default로 가서 실행문을 실행시키며, default는 생략 가능하다. case 끝에 있는 break는 다음 case를 실행시키지 않고 switch문을 빠져나간다. ..
Huitopia
summary