일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 |
- SEQUENCE
- ORA-1017
- tuple
- python 기초
- 카카오 오븐
- Oracle 18c
- 유스케이스 다이어그램
- Usecase Diagram
- SQL Developer
- oracle 11g
- MySQL
- Oracle 오류
- The Network Adapter could not establish the connection
- Python
- 카카오맵 API
- 10fastfingers.com
- typing test
- 자바
- SQL
- 데이터베이스 접속
- CSV
- 카카오맵
- 매일 타자연습
- Jupyter Notebook
- oracle
- Set
- database
- Kakao Oven
- Java
- Kakao 지도 API
- Today
- Total
Another Brain
3일차(5월 21일)_ 배열(array) 본문
**GuGuDantest review
## 배열(array)
-- 그룹 데이터 자료 저장구조
-- 다차원 배열
>> 1차원
>> 2차원
>> n차원
-- 기본형, 객체형 지원타입
## 1차원 배열 : 선언, 생성, 초기화(할당)
1. 배열 선언
[modifiers] 타입[] 배열명; // 권장 int[] nos;
[modifiers] 타입 배열명[];
2. 배열 생성
배열명 = new 타입[배열크기]; // nos = new int[5];
3. 배열요소 사용 : 값할당/값가져오기
배열명[배열요소인덱스번호] = 값; // nos[0] = 100;
배열명[배열요소인덱스번호]
-- 배열요소 인덱스번호 시작은 0 ~ 배열크기-1 범위
-- 배열명 : 참조변수
-- 배열명.length 변수 : 배열크기 저장변수
-- 예외
>> 프로그램 수행중에서 발생하는 문제(오류)
>> ArrayIndexOutOfBoundsException
>> 잘못된 배열요소 접근시에 발생하는 문제(예외)
## 1차원 배열 : 선언 + 생성, 초기화(할당)
1. 배열 선언 및 생성
[modifiers] 타입[] 배열명 = new 타입[배열크기];
2. 배열요소 사용
배열명[배열요소인덱스번호] = 값;
## 1차원 배열 : 선언 + 생성 + 명시적초기화
-- 주의사항 : {}; (반드시 ; 세미콜론을 표기해야함)
1. [modifiers] 타입[] 배열명 = new 타입[]{초기값1, 초기값x};
2. [modifiers] 타입[] 배열명 = {초기값1, 초기값x};
## new 배열 객체 생성 순서(절차)
1. 메모리 할당
2. 기본값 자동 초기화
[3. 명시적 초기값 할당] // 선택
4. 참조값(reference value) 할당
## 자바 데이터타입 기본값
-- 기본형
>> 정수형 : 0
>> 실수형 : 0.0
>> 논리형 : false
>> 단일문자형 : 공백문자 '\u0000'
-- 참조형
>> 모든클래스(인터페이스), 배열
>> null
>> null의미 : 어떠한 객체도 참조하지않고있음
## 2차원 배열
-- 행과 열의 구조를 갖는 배열
-- 행마다 열의크기를 동일하게 생성
-- 행마다 열의크기를 다르게 생성
-- 2차원배열명.length : 2차원배열의 행크기 저장된 변수
-- 2차원배열명[행번호].length : 해당행의 열크기 저장된 변수
-- 행번호 시작 : 0
-- 열번호 시작 : 0
## 행마다 열의크기를 동일하게 생성
1. 선언, 생성, 초기화
-- 선언
[modifiers] 타입[][] 2차원배열명; // 권장
[modifiers] 타입 2차원배열명[][];
-- 생성
2차원배열명 = new 타입[행크기][열크기];
-- 초기화(배열요소 사용)
2차원배열명[행번호][열번호] = 값;
2. 선언 + 생성, 초기화
-- 선언 + 생성
[modifiers] 타입[][] 2차원배열명 = new 타입[행크기][열크기];
-- 초기화(배열요소 사용)
2차원배열명[행번호][열번호] = 값;
3. 선언 + 생성 + 초기화
[modifiers] 타입[][] 2차원배열명 = new 타입[][]{
{value1, value2, value3},
{value1},
{value1, value2, value3, valueX}
}
[modifiers] 타입[][] 2차원배열명 = {
{value1, value2, value3},
{value1},
{value1, value2, value3, valueX}
}
# 행마다 열의크기를 다르게 생성
1. 선언
[modifiers] 타입[][] 2차원배열명;
2. 생성
// 행크기만 지정, 열크기는 각 행마다 각각 다르게 지정생성
2차원배열명 = new 타입[행크기만지정][];
2차원배열명[행번호] = new 타입[해당행의열크기지정];
3. 배열요소 사용
2차원배열명[행번호][열번호] = 값;
## 자바 프로그래밍 컴파일 방법
-- default package 컴파일방법
dos> javac [options] *.java
dos> javac HelloWorld.java
dos> javac -encoding utf-8 HelloWorld.java
=> 클래스이름.class (byte code)
-- package 컴파일방법
dos> javac -d output-dir-name *.java
## 자바 프로그래밍 실행 방법
-- 자바실행 : .class 바이트코드의 확장자를 지정해서는 안됨(. 패키지구분자)
-- default package 실행방법
dos> java [options] main()메서드가있는실행클래스명
dos> java HelloWorld
-- package 실행방법
dos> java [options] 패키지명.패키지명.main()메서드가있는실행클래스명
dos> java HelloWorld
-- main() 메서드 아규먼트 전달 실행방법
dos> java [options] main()메서드가있는실행클래스명 아규먼트데이터1 "아규먼트 데이터x"
=> jvm이 실행시에 클래스명뒤에 공백을 구분자로해서 해당크기만큼의 String 타입의 배열객체를 생성해서 순서대로 배열요소 값을 할당
## Wrapper API
-- 자바의 기본형 타입을 객체형타입으로 변환하는 클래스
-- 문자열형식의 숫자데이터를 int 타입으로 변환 예시
int teamLenth = Integer.parseInt(args[0]);
'P > JAVA' 카테고리의 다른 글
mission_java_RandomTeamTest (0) | 2021.05.25 |
---|---|
4일차_ 클래스(class), 객체(object), 멤버변수, 메서드, 패키지(package), MVC Pattern (0) | 2021.05.25 |
2일차(5월 18일)_ 자바 프로그래밍 기본, 식별자, 데이터타입, 변수, 연산자, 제어문 (조건문, 반복문) (0) | 2021.05.22 |
mission_java_Lotto645 (0) | 2021.05.22 |
mission_java_GuGuDanTest (0) | 2021.05.22 |