Programming Language/Java 13

[Java] Collection - List 써보기

앞선 포스팅에서 배열(array)의 길이가 알아서 필요에 따라 연장되도록 arraycopy를 사용한 코드를 짜보았다. 결국 배열은 길이가 제한된다는 점 때문에 써본 것이지만, List라는 자료형 클래스를 사용하면 길이 제한을 신경 쓸 필요가 없다. 리스트 클래스의 특징은; 값을 하나씩 저장하고 순서를 보장하며 중복을 허용한다. 그렇기에 일반적으로 배열대신 사용이 가능하다. list1로 선언된 리스트배열은 모든객체를 저장할 수 있고, list2는 String을, list3은 정수를 저장 가능하다. 저장 방법은 다음과 같다. 라인15~17은 list2에 세가지 String을 저장한 것이고, 라인 19~21은 list3에 세가지 정수를 저장한 것이다. 출력이 필요할 시 간단하게 System.out.print ..

[Java] arraycopy를 이용한 배열 길이 늘리기

자바로 코딩을 하다보면 배열을 첫 선언할 때 임의의 값을 넣어야할 때가 있다. 처음부터 아주 큰 값을 넣는건 하드웨어 자원 관리 차원에서 좋은 방법이 아닐 것이다. 그렇다면 프로그램 실사용 중 임의의 값을 초과하는 배열이 필요해질 때는 어떻게 해야할까? 코드를 수정하는 패치를 진행한다면 해결은 되겠지만, 이런 번거로움을 미연에 방지할 수 있다. 다음을 보자; 라인 56 - 64는 내가 학생 수강관리 프로그램을 짤 때 넣은, 수강과목을 추가하는 메소드이다. 학생 개인이 수강하는 과목의 배열(subjectList)은 해당 클래스 상단부에 5개로 임의 선언 되었으나 5개가 넘을 수 있으니 해당 배열이 필요시 자동적으로 10개, 15개로 늘어나도록 코드를 짜보았다. 먼저 57번 라인에서 if문으로 과목의 개수가..

[Java] Week1 정리

1. 변수 - 일반변수(기본형) : 값을 저장하는 기본 메모리공간 1. 정수형 : int, byte, short, long(접미사 L(l)) 2. 실수형 : double, float(접미사 F(f)) 3. 문자형 : char(정수형으로 분류하기도 함 : 유니코드표 코드로 저장) : 1글자 4. 불리언 : boolean - 참조변수 : 객체의 주소를 정하는 변수(객체명) : new 키워드를 통해 객체 생성 - 자료형변환 : 변수, 상수, 리터럴값들을 일시적으로 다른 자료형으로 변환 - 자동형변환 : 정수 -> 실수, 작은바이트 -> 큰바이트 - 명시적형변환 : 자동으로 자료형변환이 되지않아서 에러가 발생하면 (자료형)변수명 => 명식적 자료형 변환을 해줘야 합니다. 2. 연산자 - 대입연산자(=) - 오른..