본문 바로가기

분류 전체보기

(55)
[Java] Object 클래스의 toString() 메서드 java.lang 패키지는 자바 프로그래밍에 가장 기본이 되는 클래스들을 포함하고 있는 패키지이다. 이 java.lang 패키지에는 모든 클래스의 최고 조상인 Object 클래스가 있는데, 이번 포스팅에서는 Object 클래스의 메서드 toString()에 대해 알아보자. 1. toString() - 객체 자신의 정보를 문자열로 반환한다. 이 메서드(toString)는 인스턴스에 대한 정보를 문자열(String)로 제공할 목적으로 정의된 함수이다. 인스턴스에 대한 정보는 대부분 인스턴스 변수에 저장된 값들을 말하며, toString()을 통해 문자열로 표현된다. public String toString() { return getClass().getName() + "@" + Integer.toHexStri..
[JavaScript] 알아두면 유용한 배열(Array) APIs 자바스크립트(JavaScript)에서 제공하는 API 중 배열을 다루는 유용한 함수들이 많다. 배열은 프로젝트에서 필수적으로 다뤄지므로 유용한 API들을 꼭 짚고 넘어가자. 배열의 순회 (forEach) 배열의 추가 (push, unshift, splice) 배열의 삭제 (pop, shift, splice) 배열의 검색 (indexOf, lastIndexOf) 두 배열 합치기 (concat) 1. Array.forEach() forEach() 메서드는 배열의 각 요소마다 특정 액션을 취해준다. // forEach 구문 arr.forEach(callback(currentvalue[, index[, array]])[, thisArg]) forEach()은 첫번째 파라미터에 콜백(callback)함수를 필수적..
[JavaScript] 자바스크립트 메서드 map(), filter(), reduce() 사용 자바스크립트(JavaScript)에서 배열을 쉽게 다룰 수 있도록 하는 메서드 map(), filter(), reduce()에 대해 알아보자. 간단히 정리하자면, map() - 배열의 각각의 요소를 활용해서 새로운 배열을 만들고 싶을 때 filter() - 조건에 맞는 특정 요소만 추출해서 새로운 배열을 만들고 싶을 때 reduce() - 각각의 요소를 활용해서 어떤 값을 얻고 싶을 때 (누적 값) 사용한다. 1. map() map() 메서드는 배열의 각각 요소에 대해 주어진 함수를 실행하여 반환한 결과를 모아 새로운 배열을 만들어준다. 1-1) arr.map(callback(currentValue)) var arr = [1, 2, 3, 4, 5]; var mapArr = arr.map((i) => i ..
[Java] 문자열(String)비교 - 등가 비교 연산자(==)와 equals()의 차이 자바에서 String 타입의 문자열을 비교할 때 등가 비교 연산자(==)와 equals()는 차이가 있다. 자바에서 String타입의 문자열을 비교할 때 ==가 아닌 equals()라는 메서드를 이용한다. 1. 등가 비교 연산자(==) 등가 비교 연산자(==)는 기본 자료형에 대해서는 값 자체를 비교하지만 참조 자료형에 대해서는 주소 값을 비교한다. String은 참조 자료형으로 객체를 생성할 때마다 다른 주소 값을 갖게 된다. 즉, 내용이 같은 객체이더라도 다른 주소 값을 갖게 된다. String str1 = "abc"; String str2 = "abc"; str1와 str1는 같은 내용을 갖고 있지만 다른 주소 값을 가진다. 2. 참조 자료형 String 기본적으로 String 변수를 선언할 때는 ..
[Java] 3항 연산자 3항 연산자는 if문이 길어지는 것을 더 간결하게 줄여준다. 3항 연산자를 이용하면 조건문과 실행문을 코드 한줄로 줄일 수 있다. 1. 3항 연산자의 사용법 // 조건 ? A : B absX = x >= 0 ? x : -x; 조건 ? A : B => 조건식이 참이면 A, 그렇지 않으면 B 예제에서 x가 0이거나 양수이면 absX는 x값을 그대로 가지고, x가 음수이면 absX는 -x가 된다. int x = -5; absX = x >= 0 ? x : -x; System.out.println(absX); //결과: 5 int x = 10; absX = x >= 0 ? x : -x; System.out.println(absX); //결과: 10 2. 3항 연산자와 if문 if문을 3항 연산자로 바꿀 수 있다...
[Java] 반복문 while과 do~while의 차이 비교 1. while문 조건식에 따라 반복 횟수가 정해진다. 조건식이 false가 될 때까지 반복문이 돈다. public class Test01 { public static void main(String[] args) { int i = 0; while (i < 5) { System.out.print(i); i++; } } } //결과: 01234 2. do~while문 while문처럼 조건식이 false가 될 때까지 반목문이 돈다는 것은 동일하다. 그러나 do~while문은 do 블록과 while 블록이 있다. do 블록에 있는 코드는 조건식과 관계없이 무조건 한 번은 실행된다. public class Test01 { public static void main(String[] args) { int i = 0;..
[Java] 클래스 getter/setter public class Grade { private int korea; private int eng; private int math; } 다음과 같은 클래스에 private으로 선언한 3개의 속성을 만들었다. private으로 선언한 속성은 외부에서 접근, 수정할 수 없다. 따라서 getter와 setter함수로 접근해야 한다. 함수 형식은 get+변수(대문자시작), set+변수(대문자시작)으로 정해져 있어 아래와 같은 형식을 따라야 한다. 1. getter/setter public class Calculator { private int korea; private int eng; private int math; // getter int getKorea() { return this.korea; } int ..
[Java] Advanced For Loop (향상된 for문) 1. 기존 for문 int[] arr = {1, 2, 3, 4, 5}; for (int i = 0; i < 5; i++) { System.out.println(arr1[i]); } 2. Advanced For Loop (향상된 for문) int[] arr = {1, 2, 3, 4, 5}; for (int i : arr) { System.out.println(i); }