배열 4

배열을 같은 값으로 초기화할 때 하드코딩보다 Array(number).fill(something)를 사용하자.

오늘의 쬐그마한 배움이었다. this.#squares = [null, null, null, null, null, null, null, null, null] 어떤 배열을 하나의 값으로 초기화해야 한다면, 위와 같이 일일이 하드코딩하여 써주는 것 보다, 아래와 같이 `Array(number).fill(something)`를 상수(constant)와 함께 사용하는 것이 더 가독성과 이후 변경, 확장, 유지, 보수에 용이하다. const SQUARE_LENGTH = 9; const DEFAULT_SQUARE_CONTENT = null; this.#squares = Array(SQUARE_LENGTH).fill(DEFAULT_SQUARE_CONTENT); 참고 developer.mozilla.org/ko/docs..

다차원 배열

간단하게 2차원 배열을 선언하자면, int[][] x = new int[2][4] 과 같다. Java는 엄밀한 의미에서 다차원 배열이 없다. 2차원 배열을 '배열의 배열'로 생각하고 3차원을 '배열의 배열의 배열'로 생각하기 때문이다. 따라서 배열 x의 형은 아래와 같다. int 형을 구성 자료형으로 하는 배열"을 구성 자료형으로 하는 배열 다차원 배열 개념을 연습해보기 위해 예시를 들어보자. 한 해의 경과 일 수를 나타내는 프로그램 package chap02; import java.util.Scanner; // 그 해 경과 일수를 구함 class DayOfYear { // 각 달의 일 수 static int[][] mdays = { {31, 28, 31, 30, 31, 30, 31, 31, 30, 31..

난수, 역순 정렬, 두 배열 비교, 기수 변환

난수 java.util에 패키지에 속한 Random 클래스는 Java가 제공하는 아주 큰 클래스 라이브러리입니다. Random 클래스의 인스턴스는 일련의 의사 난수를 생성합니다. 난수는 무(Nothing)에서 생성되는 것이 아니라 seed(씨앗)이라는 수의 값을 바탕으로 여러 연산을 수행하여 얻습니다. 역순 정렬 첫번째 값과 마지막 값을 바꾸고, 두번째 값을 (마지막-1)번째 값과 바꾸는 것을 반복하면 된다. 값을 교환할 때는 같은 자료형을 가진 변수를 하나 더 사용한다. 두 배열 비교 먼저 두 배열의 길이를 비교합니다. 그리고 두 배열의 첫번째 요소부터 마지막 요소까지 비교합니다. 기수 변환 정숫값을 임의의 기수로 변환하는 알고리즘. package chap02; import java.util.Scann..

배열, 최댓값 구하기

더보기 *책 의 내용을 정리한 것입니다. 자료구조란, 데이터 단위와 데이터 자체 사의 물리적 또는 논리적인 관계이다. 쉽게 말해 자료를 효율적으로 이용할 수 있도록 컴퓨터에 저장하는 방법을 말한다. 배열 a = new int[5]; 위 선언의 의미는 int 형의 배열 본체를 새성하고 그것을 변수 a가 참조하도록 설정한다는 것이다. 배열의 구성 요소는 자동으로 0으로 초기화되는 규칙이 있다. 이 점은 보통 변수와 다르므로 꼭 기억해둬야 한다. 자료형에 따라 초깃값이 다른데 대부분 0이고, boolean의 경우 false, 참조형의 경우 공백을 참조하거나 null이 초깃값이 된다. 추가로, 메서드 안에서 선언한 지역 변수는 초깃값으로 초기화되지 않는다. 즉, 변수를 만들어도 초기화는 수행되지 않는다. 즉, ..