일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 자바 Wrapper클래스
- java super( )
- Express
- Java업캐스팅
- 자바 추상메서드
- 코딩
- 자바 Random클래스
- Java다운캐스팅
- 자바 문자열 클래스
- nodejs
- Java thorw
- 데이터베이스
- Java 내부 클래스
- Java문자열 클래스
- Java추상클래스
- Java try-catch
- database
- 자바 스트링클래스
- dbeaver
- Java 추상 메서드
- 자바 String클래스
- oracle
- 자바 try-catch
- DBMS
- db
- 자바 제어문
- 오라클
- 자바 내부 클래스
- Java객체배열
- 자바 예제
- Today
- Total
코딩이란 무엇일까
[Java/자바] 배열(1) (Array) 선언 및 사용방법 본문
안녕하세요! 오늘은 Java에서 사용되는 배열에 대해 알아보겠습니다~
배열이란?
배열은 같은 타입의 데이터를 연속된 공간에 나열하고, 각 데이터에 인덱스를 부여해 놓은 자료구조입니다.
인덱스(index)란?
배열에서는 인덱스란 단어를 많이 사용하는데 인덱스는 배열의 위치 값을 의미합니다.
쉽게 생각해서 각각의 요소들의 방 번호?라고 생각하시면 쉽습니다.
위의 사진을 보면 배열의 길이(length)는 7이지만
인덱스(index) 값은 0부터 시작해 6으로 끝납니다.
인덱스의 값은 항상 0으로 시작하기 때문에 배열의 길이 하고 헷갈릴 수 있으니 조심하셔야 합니다.
배열의 사용 목적
그렇다면 배열은 왜 사용할까요?
같은 타입의 변수들의 관리를 편하게 하기 위해서입니다.
예를 들어 100개의 정수 형태를 선언하고 초기화한다 생각해봅시다.
int a=1;int b=2; int c=3;..... int z=100; 이렇게 엄청나게 많은 코드를 잡아먹고 또 사용을 할 때면 또 찾아가서 해야 되고.. 관리하기도 어렵고 코드도 엄청 길어지겠죠? 따라서 자료형이 같은 변수들의 관리를 용이하게 하기 위해서 배열을 사용한답니다.
배열의 사용방법
배열의 선언
타입 [ ] 배열명; ex) int [ ] arr;
배열의 생성
배열명 = new 타입[길이] ex) arr= new int [3]
배열의 선언과 생성을 동시에 하는 초기화
타입 [ ] 배열명 = new 타입[길이]
ex) int [ ] arr = new int [3];
자료형에 따른 배열의 초기 값
배열 생성 시 배열의 값은 배열의 타입에 해당하는 기본 값으로 초기화되어있습니다.
배열을 만든 뒤 아무 값도 넣지 않는다면 초기 값이 설정되어 있다는 말이죠!!
정수형 배열의 초기 값 ⇒ 0
문자형 배열의 초기 값 ⇒ ‘ ‘
실수형 배열의 초기 값⇒0.0
문자열 배열의 초기 값⇒ Null
배열 생성 예시
public class Array_1 {
public static void main(String[] args) {
//배열을 사용하여 출력
int scores[];
scores=new int[3];
scores[0] =100;
scores[1]=80;
scores[2]=70;
System.out.println("1 번째 학생의 점수:"+scores[0]+"점");
System.out.println("2 번째 학생의 점수:"+scores[1]+"점");
System.out.println("3 번째 학생의 점수:"+scores[2 ]+"점");
}
}
int scores [ ];배열을 선언한 뒤
new 연산자로 배열을 생성해 줍니다.
scores [0] =100;
scores [1]=80;
scores [2]=70;
각각의 배열의 인덱스 값에 변수처럼 값을 넣어줄 수 있습니다.!!
넣어준 값을 출력해 보겠습니다.
출력 결과
for문을 사용하여 배열의 값을 출력해 보기
위의 예시를 보면 알겠지만
System.out.println("n 번째 학생의 점수:"+scores [0]+"점");
이 부분이 반복되는 것을 알 수 있습니다.
따라서 for문을 사용해 반복해 볼 것입니다.
public class Array_1 {
public static void main(String[] args) {
//배열을 사용하여 출력
int scores[];
scores=new int[3];
scores[0] =100;
scores[1]=80;
scores[2]=70;
//for반복문을 사용해서 출력
for(int i=0; i<3; i++) {
System.out.println(i+1+" 번째 학생의 점수:"+scores[i]+"점");
}
}
}
위의 부분은 다 똑같지만 for문을 한번 봐보시다.
scores [i]는 인덱스 값을 의미합니다.
따라서 i는 0,1,2까지 증가하고 반복문을 종료할 것입니다.
scores [0] 번째 인덱스, scores [1] 번째 인덱스, scores [2] 번째 인덱스 값이 출력이 될 것입니다.
따라서 배열을 for반복문을 통해 출력할 수 있다는 것도 알 수 있습니다.
배열 예시_2
이번 예시는 학생의 시험 점수를 배열 안에 넣고 평균을 구하는 코드입니다.
public class Array_3 {
public static void main(String[] args) {
int[] students= {100,95,90,88,93};
int sum=0;
for(int i=0; i<students.length;i++) {
sum+=students[i];
}
//정수/정수 = 정수가 나오기 때문에
//실수 값이 나오려면, 정수/실수 따라서 (float)로 강제 형변환을 해주었다.
System.out.println("시험 점수의 평균:"+sum/(float)students.length);
}
}
int [] students= {100,95,90,88,93}; => 학생의 점수를 넣을 배열을 만들어 줌과 동시에 값을 넣어 초기화를 시 켰습니다.
int sum=0; => 평균을 구하기 위해서는 점수들의 합을 해주어야 하기 때문에 점수들의 합을 넣어줄 변수를 생성해주었습니다.
for(int i=0; i <students.length;i++) {
sum+=students [i]; => 배열. length는 배열의 길이를 뜻합니다. 즉, 배열의 길이만큼 for문을 } 반복하라 라는 의미입니다. sum+=students [i]를 풀어서 해석하면
sum=sum+studnts [i]입니다. 배열마다의 값을 더해줄 수 있겠죠
System.out.println("시험 점수의 평균:"+sum/(float) students.length); => 점수를 합한 변수인 sum / (float)는 평균은 실수로 구해야 하기 때문에 강제 형 변환을 해주었고 students.lengt 배열의 길이만큼 나누어주면 평균이 나오겠죠?
- 배열명. length => 배열의 길이를 구할 수 있습니다.
- Arrays.toString(배 열명) => 배열의 요소를 문자열로 출력할 때 쓰는 함수입니다.
이상으로 오늘 배열 포스팅 마치겠습니다.ㅎㅎ 글 읽어주셔서 감사합니다~

'Java' 카테고리의 다른 글
[Java/자바]배열(3) 다차원 배열 (1) | 2022.09.23 |
---|---|
[Java/자바] 배열(2) 예제(로또 번호 생성기) (1) | 2022.09.23 |
[Java/자바]제어문(5) -break, continue문 (0) | 2022.09.21 |
[Java/자바] 제어문_(4)while , do-while반복문 (1) | 2022.09.21 |
[Java/자바] 제어문(3)_ for 반복문 (2) | 2022.09.21 |