배열 ( Array)JAVA/Java기초2023. 9. 24. 18:17
Table of Contents
자료형 변수;
int : 정수 한개
int a;
Book : 책 한 권
Book b;
String : 문자열 한 개
String s;
자료형 [ ] 변수;
int [ ] : 정수 여러 개
int [ ] a;
Book [ ] : 책 여러 권
Book [ ] : b;
String [ ] : 문자열 여러 개
String [ ] s;
문제점 :
개수가 늘어나면 불편하다
데이터 처리(반복 문 사용 불가)
데이터 이동 불편(메서드로)
해결 방법 :
1차원 배열 = [ ]
2차원 배열 = [ ] [ ]
- 동일한 데이터를 여러 개 저장할 수 있는 구조 ( 덩어리, 바구니, 객체)를 자바에서 배열 (array) 이라고 한다.
배열을 생성하는 방법 :
new int [3] ;
동일한 연속적인 구조
동일한 변수들의 집합
배열은 객체로 취급한다.
데이터를 담아서 이동하기 쉽다.
순서 :
1. 변수를 선언하고 : int [ ] a;
2. 객체를 생성하고(실체를만들고) : new int [5];
3. 생성된 객체를 연결(저장) 하고 : a = new int [5];
Character.toLowerCase() = 대문자를 소문자로 변환
package Book;
public class Book {
public Book(String title, String author, int year) {
this.title = title;
this.author = author;
Year = year;
}
private String title;
private String author;
private int Year;
public String getTitle() {
return title;
}
public String getAuthor() {
return author;
}
public int getYear() {
return Year;
}
@Override
public String toString() {
return "Book{" +
"title='" + title + '\'' +
", author='" + author + '\'' +
", Year=" + Year +
'}';
}
}
//책 3권을 저장할 배열을 생성하고 책3권의 데이터를 저장하고 출력하세요.
import Book.Book;
public class ObjectArraytTest {
public static void main(String[] args) {
Book[] b = new Book[3];
b[0] = new Book("제목1","가길동",2022);
b[1] = new Book("제목2","나길동",2023);
b[2] = new Book("제목3","다길동",2024);
// 배열의 각 책 데이터를 출력
for (int i = 0; i < b.length; i++) {
System.out.println("Book " + (i + 1) + ": " + b[i]);
}
}
}
package Movie;
public class Movie {
private String title;
private String hero;
private int year;
public Movie(String title, String hero, int year) {
this.title = title;
this.hero = hero;
this.year = year;
}
public String getTitle() {
return title;
}
public String getHero() {
return hero;
}
public int getYear() {
return year;
}
@Override
public String toString() {
return "Movie{" +
"title='" + title + '\'' +
", hero='" + hero + '\'' +
", year=" + year +
'}';
}
}
import Movie.Movie;
public class ObjectArrayExam {
public static void main(String[] args) {
Movie[] m = new Movie[3];
m[0]= new Movie("영화제목1","슈퍼맨",2021);
m[1]= new Movie("영화제목2","헐크",2022);
m[2]= new Movie("영화제목3","캡틴아메리카",2023);
for (int i = 0; i < m.length; i++) {
System.out.println(m[i]);
}
}
}
public class TwoDimArrayTest {
public static void main(String[] args) {
// 3명의 학생과 3개 과목의 성적을 저장하는 2차원 배열 생성
double[][] scores = new double[3][3];
// 각 학생의 성적 입력
scores[0][0] = 90.5; // 학생 1의 수학 성적
scores[0][1] = 85.0; // 학생 1의 영어 성적
scores[0][2] = 78.5; // 학생 1의 국어 성적
scores[1][0] = 75.0; // 학생 2의 수학 성적
scores[1][1] = 88.5; // 학생 2의 영어 성적
scores[1][2] = 92.0; // 학생 2의 국어 성적
scores[2][0] = 82.5; // 학생 3의 수학 성적
scores[2][1] = 96.0; // 학생 3의 영어 성적
scores[2][2] = 89.5; // 학생 3의 국어 성적
// 각 학생의 성적 출력
for (int i = 0; i < 3; i++) {
System.out.println("학생 " + (i + 1) + "의 성적:");
for (int j = 0; j < 3; j++) {
System.out.println("과목 " + (j + 1) + ": " + scores[i][j]);
}
System.out.println();
}
}
}
정리
1. 동일한 데이터를 연속적으로 여러 개 저장할 수 있는 자료구조를 무엇이라 하는가 :
배열 (Array)
2.배열의 길이를 구하는 속성을 쓰세요.
length
3. 3행 4열의 실수형 배열을 생성하는 코드를 작성하세요.
float[ ] [ ] f = new float [3] [4] ;
4.int [ ] [ ] x = new int [3] [5]; 주어진 배열에서 x.length 의 값과 x[0].length 의 값을 쓰세요.
3,5
5. int [ ] [ ] a = {{1,2,3,4},{5,6,7,8}}; 주어진 배열에서 a[1][3]의 값은 얼마인가?
8
6. Book[] b = new Book[3]; 주어진 배열 처럼 객체를 저장하는 배열을 무슨 배열이라 하는가?
객체배열 (Object Array)
'JAVA > Java기초' 카테고리의 다른 글
자바에서 SelectList와 SelectOne 이해하기 (0) | 2024.05.28 |
---|---|
자바에서 Map, List 이해하기 (0) | 2024.05.28 |
프로그래밍 3대 요소 (0) | 2023.07.29 |
JVM과 자바의 구동방식 (0) | 2023.07.24 |
JavaSE 프로젝트 구조 (0) | 2023.07.24 |
@Soohocoding :: Soohocoding
포스팅이 좋았다면 "좋아요❤️" 또는 "구독👍🏻" 해주세요!