일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 개발자가 되기 위해 꼭 알아야 하는 IT용어
- scanf
- 김영한 #SOLID #객체지향
- 스프링 입문
- 머신러닝 #학습내용정리
- 기록하기
- 커밋
- 그룹핑
- GIT
- 에러포스팅
- 옵셔널태그
- SQL
- MODIFY
- 컬럼수정
- COMMIT
- 작업 영역
- 머신러닝 #회귀 #규제
- group by
- 단축키정리
- 생성자 #자바 #기록남기기
- 크롬브라우저
- 스프링부트
- 클래스 #아이디
- C언어 #문자열변환 #정수형변환
- 개발공부
- 공부내용정리
- SafeUpdate
- Numpy #TIL #넘파이 기초
- MVC #디자인패턴
- 파이썬
- Today
- Total
데이터 분석가 몽구리
자바의 배열 본문
int intArray = new int[5];
- 배열?
배열은 인덱스와 인덱스에 대응하는 데이터들로 이루어진 자료 구조이다. 한마디로, 흩어져 있는 자료들을 정리하기 위해 사용한다고 이해하면 쉽다.
4 |
55 |
32 |
28 |
2 |
int i[] = new int[10];
배열을 사용하는 가장 큰 이유 중 하나는 반복문의 활용이다.
for(sum=0, n=0; n<10; n++)
sum += i[n]
위와 같은 방식으로 10개의 정수 합을 간단히 구할 수 있다.
- 배열 선언 및 생성
1. 배열에 대한 레퍼런스 변수 선언
2. 배열 생성 - 배열의 저장 공간 할당
배열은 (1)배열에 대한 레퍼런스 변수를 선언하는 단계와 (2) 데어터를 저장할 배열 공간을 할당받는 단계로 구분된다.
(1)배열에 대한 레퍼런스 변수 intArray 선언
- 이 선언만으로 배열 공간이 할당되지는 않는다. intArray 는 주소 값(레퍼런스 값)을 가지며 그 자체가 배열은 아니다.
int intArray [];
. |
intArray
int intArray[]; //<- 이 방법이 일반적이다.
int [] intArray;
※ 배열 선언 시에는 []안에 배열의 크기를 지정해서는 안된다.
(2)배열 생성
배열 생성은 저장할 배열 공간을 할당받는 과정이다. 반드시 new 연산자 를 이용하여 배열을 생성하며 []안에 생성할 원소 개수를 지정한다.
- 배열의 선언과 동시에 생성
int intArray = new int [5];
- 배열 초기화
배열 선언문에서 {}에 원소를 나열하면 초기화된 배열을 만들 수 있다.
int intArray[] = {4, 3, 2, 1, 0};
double doubleArray[] = {0.01, 0.02, 0.03, 0.04};
위와 같이 배열을 초기화하면 자동으로 배열의 크기가 저장된다.
- 배열 인덱스와 배열 원소 접근
배열의 인덱스는 정수만 가능하다. 인덱스는 0부터 시작하며 마지막 원소의 인덱스는 (배열크기-1)이다.
실습1
int intArray[] = new int[5]; //원소가 5개인 배열 생성, 인덱스는 0~4까지 가능
intArray[0] = 5; //원소 0에 5저장
intArray[3] = 6; // 원소 3에 6저장
int n = intArray[3]; // 원소 3의 값을 읽어 n에 저장. n은 6이됨
//양수 5개를 입력받아 배열에 저장하고, 제일 큰 수를 출력하는 프로그램
import java.util.Scanner;
public class ArrayAccess {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int intArray[] = new int[5]; //배열 생성
int max = 0; //현재 가장 큰 수
System.out.println("양수 5개를 입력.");
for(int i=0; i<5; i++) {
intArray[i] = sc.nextInt(); //입력받은 정수를 배열에 저장
if(intArray[i] > max) //intArray[i]가 현재 가장 큰수보다 크면
max = intArray[i];
}
System.out.println("가장 큰 수는 " + max + "입니다.");
sc.close();
}
}
- 배열의 크기, length 필드
length 필드를 이용하면 배열의 크기를 간단히 알아낼 수 있다.
int intArray [] = new int[5];
int size = intArray.length; //size는 5
배열 객체에 length 필드가 있기 때문에, 배열의 크기를 따로 관리할 필요가 없다.
실습2 : 배열의 length 필드를 이용하여 배열 크기만큼 정수를 입력받고 평균을 구하는 프로그램 작성
import java.util.Scanner;
public class codingDuck{
public static void main(String[] args) {
int intArray[] = new int[5]; //배열의 선언과 생성
int sum=0;
Scanner sc = new Scanner(System.in);
System.out.print(intArray.length + "개의 정수를 입력하세요>> ");
for(int i=0; i<intArray.length; i++)
intArray[i] = sc.nextInt(); //키보드에서 입력받은 정수 저장
for(int i=0; i<intArray.length; i++)
sum += intArray[i]; //배열에 저장된 정수 값 더하기
System.out.println("평균은 " + (double)sum/intArray.length);
sc.close();
}
}
'Java' 카테고리의 다른 글
생성자(constructor) (2) | 2023.11.22 |
---|---|
클래스와 객체 (2) | 2023.11.22 |
클래스의 객체 생성 및 활용(Java) (0) | 2022.07.30 |
생성자(Java) (0) | 2022.07.07 |
다차원배열(Java) (0) | 2022.07.07 |