1. 배열(array)
용도: 같은 타입의 데이터를 여러개 저장가능한 방법.
특징: 같은 타입만 저장 가능.
한번 생성된 배열은 크기변경이 불가. ( 크기변경할려면 다시 생성해야 된다.)
배열은 참조형( 배열명(변수)는 주소값을 갖는다. )
배열에 데이터는 기본형 데이터(8개)도 가능하고 참조형 데이터(클래스)도 가능하다.
배열의 요소접근은 인덱스(첨자)를 이용하고 0부터 시작한다. 예> 배열명[idx]
배열의 길이는 배열명.length 를 사용한다.
사용방법:
1) 배열선언
데이터타입 [] 배열명; // 배열명의 데이터타입은 ( 데이터타입 [] ), 참조형이기 때문에 주소값을 갖는다.
데이터타입 배열명 [] ;
2) 배열생성 ( new )
배열명 = new 데이터타입[size]; // 생성된 배열이 heap 메모리에 생성됨. heap 메모리에 생성된 변수는 자동초기화됨.
3) 배열초기화 // 인덱스를 이용, 0부터 사용가능
배열명[idx]=값;
4) 배열크기
배열명.length;
배열생성 3가지 방법
1) new 이용
int [] num;
num = new int[3];
num[0]=10;
num[1]=20;
num[2]=30;
2) 리터럴 이용
int [] num = {10,20,30};
3) new + 리터럴 이용
int [] num;
num = new int[]{10,20,30};
2. 2차원배열 ( 다중행/다중열 로 구성 )
1) 정방형배열 ( 모든행의 열의 길이가 동일. 특징은 하나의 new로 행과 열을 동시에 생성.
가. new 이용
int [][] num;
num = new int[2][2]; // new int[행크기][열크기] 2X2
num[0][0]=10;
num[0][1]=20;
num[1][0]=30;
num[1][1]=40;
행의길이: num.length
1행의 열길이: num[0].length
나. 리터럴 이용
int [][] num = { {10,20},{30,40}};
다. new + 리터럴 이용
int [][] num = new int[][]{ {10,20},{30,40}};
2) 비정방형배열 ( 행의 열의 길이가 다르다. 특징은 하나의 new 로 행을 만들고 여러번의 new로 열을 생성 )
가. new 이용
int [][] num;
num = new int[2][]; // 행부터 생성
//나중에 열을 만듬
num[0]=new int[1];
num[1]=new int[3];
//배열초기화
num[0][0]=10;
num[1][0]=20;
num[1][1]=30;
num[1][2]=40;
나. 리터럴 이용
int [][] num = { { 10 },{20,30,40}};
다. new + 리터럴 이용
int [][] num = new int[][]{ {10},{20,30,40}};
=====> 배열 사용시 Arrays 클래스의 도움을 받으면 배열처리를 손쉽게 할 수 있다.
3. Integer.parseInt("10")
역할: "10" 는 연산불가.
연산하기 위해서 "10" 를 10로 변경해야 된다.
예> int num = Integer.parseInt("10");
float f = Float.parseFloat("3.14");
4. 랜덤값 얻기
- java.util.Random 클래스 이용
- 사용방법:
Random r = new Random(); // Random의 구성요소 ( 변수와 메서드 )
r.nextInt()
r.nextInt(n)
r.nextFloat()
..
5. 클래스
가. 객체(object)
정의: 현실세계의 존재하는 사물의미.
만약에 A 동물병원에서 '애완동물 관리'하는 프로그램 개발 의뢰를 받았음.
주문(order)---> 분석 ---> 설계----->구현 -----> 테스트 -----> 배포
분석단계의 핵심작업: 애완동물관리 프로그램에 적합한 객체(object)를 추출.
예> 고양이객체(속성과동작), 강아지객체(속성과동작)
나. 클래스(class)
정의: 분석단계에서 추출한 고양이 객체(속성과동작)를 자바에서 표현하는 방법.
고양이객체 ---------------------> 고양이클래스인 Cat
속성 ---------------------> 인스턴스변수
동작 ----------------------> 메서드
public class Cat{
//속성인 인스턴스 변수
String name;
int age;
String gender;
//동작인 메서드
}
다. 인스턴스(instance)
정의: 2마리 관리한다고 가정
예> 야옹이 2 암컷 , 망치 1 수컷
main(){
Cat c1 = new Cat();
c1.name="야옹이";
c1.age=2;
c1.gender="암컷";
Cat c2 = new Cat();
c2.name="망치";
c2.age=12;
c2.gender="수컷";
'[study]이론정리 > JAVA(eclipse)' 카테고리의 다른 글
java 6일차 _01. 생성자(2) (0) | 2024.03.15 |
---|---|
java 6일차 _01. 생성자 (0) | 2024.03.15 |
참고사이트(1일차 ~ 5일차) (0) | 2024.03.14 |
java 5일차 _ 06. 객체 및 클래스( (1) Cat 클래스작성 ) (0) | 2024.03.14 |
java 5일차 _ 06. 객체 및 클래스 (0) | 2024.03.14 |