분류 전체보기
Java - 어레이리스트(ArrayList)
자바의 Array는 생성 시에 데이터의 갯수를 정해야 하고, 그 갯수를 초과하면 더 이상 데이터 추가가 불가능하다. 따라서 자바 개발시에는, Array의 불편함을 개선한 ArrayList를 주로 사용한다. 1. Array List 메모리에 동적으로 할당 생성 시에 갯수를 정의하지 않아도 된다. 갯수에 상관없이 데이터의 추가, 삭제가 자유롭다. 안에 저장할 데이터 타입을 적어줘야 한다. 2. ArrayList 생성 import java.util.ArrayList; ArrayList nameList = new ArrayList(); 3. 데이터 추가, 변경, 삭제 데이터 추가 nameList.add("홍길동"); nameList.add("김나나"); nameList.add("Mike"); 데이터 액세스 St..
Java - 문자열 관련 메소드
String data1 = "abc"; 1. String.length() : 문자열의 길이 반환 data1.length() System.out.println(data1.length()); >>> 3 2. String.concat() 문자열 + 연산과 같기 때문에 잘 사용하지 않음 data1.concat("hello") System.out.println(data1.concat("hello")); >>> abchello 3. String.substring(시작인덱스, 종료인덱스) : 문자열 슬라이싱 data1 = "hello World"; System.out.println( data1.substring(6, 10+1) ); >>> World 4. String.split() : 구분자를 기준으로 문자열을 분리..
Java - 문자열을 숫자로, 숫자를 문자열로 변환하는 방법
1. 문자열을 숫자로 변환하는 방법 1) 문자열을 정수로 변환 String str3 = "317"; int a = Integer.valueOf(str3).intValue(); // 또는 a = Integer.parseInt(str3); 2) 문자열을 실수로 변환 String str4 = "3.14"; double b = Double.valueOf(str4).doubleValue(); // 또는 b = Double.parseDouble(str4); 2. 숫자를 문자열로 변환하는 방법 1) 정수를 문자열로 변환 int k = 365; String data = String.valueOf(k); // 또는 data = Integer.toString(k); 2) 실수를 문자열로 변환 double j = 123.5..
Java - 문자열, 정수, 실수 등을 생성하는 방법
1. 문자열 생성 방법 String str1 = "Hello"; String str2 = new String("Java"); 2. 정수 생성 방법 int num1 = 5; Integer num2 = 5; 3. 실수 생성 방법 float num3 = 4.0f; Float num4 = 3.0f; double num5 = 3.11; Double num6 = 5.3;
Java - final 키워드
final final 키워드는 변수(variable), 메소드(method), 또는 클래스(class)의 선언 앞에 사용될 수 있다. 이 final 키워드는 어떤 곳에 사용되냐에 따라 다른 의미를 가진다. 하지만 final 키워드를 붙이면 무언가를 제한한다는 의미를 가지는 것이 공통적인 성격이다. 1. final variable (종단 변수) = constant (상수) 변수에 final을 붙이면 이 변수는 수정할 수 없다는 의미를 가진다. 수정될 수 없기 때문에 초기화 값은 필수적이다. 초기화 전에 사용하면 에러가 발생한다. final int number = 1; 2. final method (종단 메소드) 메소드에 final을 붙이면 override를 제한한다. 즉, 하위 클래스에서 해당 메소드를 수..
Java - 인터페이스(Interface)
1. 인터페이스 인터페이스는 클래스가 아니지만, 일종의 추상 클래스라고 생각할 수 있다. 추상 클래스보다 추상화 정도가 높아서 추상 메소드 이외의 일반 메소드나 변수를 구성원으로 가질 수 없다. 오직 추상 메소드와 상수(constant)만 멤버로 가질 수 있으며, 그 외의 요소는 허용하지 않는다. 클래스는 하나의 상속만 가능하지만, 인터페이스는 다중 상속(다중 구현)이 가능하다. 정의할 때 class가 아닌 interface를 써서 정의한다. 클래스의 상속은 extends를 쓰지만 인터페이스의 구현은 implements를 사용한다. 추상클래스와 마찬가지로, 하위 클래스는 모든 추상 메소드를 구현해야 객체로 생성할 수 있다. 제약 사항 모든 멤버 변수는 public static final 이어야 하며, 생..
Java - 추상 클래스 (Abstract Class)
1. 추상 클래스 (Abstract Class) 추상 클래스는 미완성된 클래스이다. 추상 클래스는 미완성된 메소드인 추상 메소드를 하나 이상 포함해야 한다. 추상 클래스는 추상 메소드가 아닌 일반 메소드, 멤버도 포함할 수 있다. 클래스 정의 시 앞에 abstract 키워드를 붙인다. 추상 클래스는 동작이 정의되어 있지 않은 추상 메소드를 포함하고 있으므로 객체를 생성할 수 없다. 상속하는 클래스에게 추상 메소드의 구현을 강제화한다. 메소드의 동작은 구현하는 자식 클래스에게 위임한다. 하위 클래스에서, 상속 받은 모든 추상 메소드를 구현하면 객체를 생성할 수 있다. 추상 메소드가 하나라도 구현하지 않은 상태로 남아있으면, 그 하위 클래스도 추상 클래스이다. 추상 클래스는 하위 클래스의 공통점을 뽑아 상속..
Java - 변수의 종류와 메모리 구조
선언 위치에 따른 변수의 종류 클래스, 지역, 인스턴스 변수가 있으며 선언된 위치에 따라 종류가 결정된다. public class Test{ int iv; // 인스턴스 변수. static int cv; // 클래스 변수. void print(){ int lv; // 지역 변수. } } iv, cv는 클래스 내부에 선언되어 있으므로 멤버 변수. cv는 static으로 선언되었으니 클래스 변수이고, iv는 인스턴스 변수. lv는 메소드 내에 선언되었으므로 지역 변수. 1. 인스턴스 변수 (Instance Variable) 인스턴스가 생성될 때, 생성된다. 따라서 인스턴스 변수를 사용하기 전에 먼저 객체를 생성해야 한다. 인스턴스 변수는 독립적인 저장공간을 가지므로 인스턴스 별로 다른 값을 가질 수 있다. ..