Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- 타임리프 - 기본기능
- 게시글 목록 api
- 스프링 db1 - 스프링과 문제 해결
- 스프링 입문(무료)
- 스프링 mvc1 - 서블릿
- 2024 정보처리기사 수제비 실기
- 자바의 정석 기초편 ch7
- jpa 활용2 - api 개발 고급
- jpa - 객체지향 쿼리 언어
- 자바의 정석 기초편 ch3
- 자바의 정석 기초편 ch13
- 스프링 mvc2 - 로그인 처리
- 스프링 mvc1 - 스프링 mvc
- 자바의 정석 기초편 ch2
- 자바의 정석 기초편 ch6
- 스프링 mvc2 - 검증
- 자바의 정석 기초편 ch4
- 자바의 정석 기초편 ch8
- 자바의 정석 기초편 ch1
- 스프링 mvc2 - 타임리프
- 자바의 정석 기초편 ch9
- @Aspect
- 스프링 db2 - 데이터 접근 기술
- 자바의 정석 기초편 ch5
- 2024 정보처리기사 시나공 필기
- 코드로 시작하는 자바 첫걸음
- 자바의 정석 기초편 ch11
- 자바의 정석 기초편 ch12
- 자바의 정석 기초편 ch14
- 스프링 고급 - 스프링 aop
Archives
- Today
- Total
나구리의 개발공부기록
자바의 정석 기초편 ch5 - 6 ~ 7 [배열의 출력] 본문
1) 배열출력
(1) 배열 변수를 그냥 출력
- 배열변수를 print문으로 그냥 출력해버리면 값이 출력되는 것이 아니라 참조값(주소값)이 출력됨
- 예외적으로 char타입의 배열은 참조변수를 print문으로 출력하더라도 값이 출력되도록 설계되어 있는데, Java 언어 설계시 문자열과 char 배열을 쉽게 다룰 수 있도록 의도적으로 이렇게 설계되어있음
- String 타입의 변수도 print문으로 출력하면 참조값이 아닌 저장된 값이 출력됨
System.out.println(iArr)
// [I@19234921와 같은 형식의 문자열이 출력 되면서 배열이 출력 안됨
// 예외적으로 char타입의 배열만 위의 방식으로 출력이 됨.
char[] chArr = {'a', 'b', 'c', 'd' };
System.out.println(chArr); // abcd가 출력됨
(2) 반복문을 이용한 출력
- char타입 배열이 아닌 다른 타입의 배열은 이렇게 반복문을 이용하여 인덱스를 지정하여 하나씩 출력하는 것이 가장 원시적인 방법임
for (int i=0; i<iArr.length; i++) // for문을 이용하여 배열의 요소를 순서대로 하나씩 출력
System.out.println(iArr[i]);
(3) Arrays.toString()를 이용한 출력
- Arrays 클래스의 toString() 메서드를 이용하여 argument로 배열변수를 입력하면 참조값이 아닌 저장된 실제 값을 출력할 수 있음
- Arrays 클래스의 import문 작성이 필요하며 수동으로 import를 입력하고자 하는 경우 이클립스는 커맨드 + 쉬프트 + o, 인텔리제이는 옵션 + 엔터로 import를 할 수 있고 설정에 따라 자동으로 import가 되도록 할 수 있음
System.out.println(Arrays.toString(iArr)); // 가장 많이 사용함
// Arrays클래스의 toString 메소드를 활용해서 배열을 문자열로 변경 후 출력
import java.util.Arrays; // 임포트 문이 자동으로 생성 됨(없이 실행하면 에러발생)
자동으로 작성 되지만 자동으로 작성이 안된다면 수동으로 맨 위에 작성해야함
이클립스 단축키 : 커맨드 + 쉬프트 + O
(4) 예제1
- 배열변수를 그냥 출력하면 참조값이 출력됨
- for문과 Arrays를 활용하면 값을 출력할 수 있음
public static void main(String[] args) {
int[] iArr = {100, 95, 80, 70, 60}; //길이가 5인 int 배열
System.out.println(iArr); // 그냥 출력
// 출력결과
[I@7ad041f3
for (int i=0; i<iArr.length; i++) {
System.out.println(iArr[i]); // 반복문을 활용하여 출력
// 출력결과
100
95
80
70
60
import java.util.Arrays; // import문 생성
public class ex5_intro3 {
public static void main(String[] args) {
int[] iArr = {100, 95, 80, 70, 60}; //길이가 5인 int 배열
System.out.println(Arrays.toString(iArr)); // Arrays.toString 활용하여 출력
}
}
// 출력결과
[100, 95, 80, 70, 60]
(5) 예제2
- 배열 초기화와 여러가지 출력 방법
import java.util.Arrays;
public class ex5_1 {
public static void main(String[] args) {
int[] iArr1 = new int[10];
int[] iArr2 = new int[10];
int[] iArr3 = {100, 95, 80, 70, 60};
char[] chArr = {'a', 'b', 'c', 'd'};
// 1 ~ 10의 숫자를 순서대로 배열에 저장
for (int i=0; i < iArr1.length; i++) {
iArr1[i] = i + 1;
}
// 1 ~ 10의 랜덤값을 배열에 저장
for (int i=0; i < iArr2.length; i++) {
iArr2[i] = (int)(Math.random()*10);
}
// for문을 이용해 iArr1의 배열에 저장된 값을 출력
for (int i=0; i < iArr1.length; i++) {
System.out.print(iArr1[i]+",");
}
// Arrays.toString을 활용한 출력
System.out.println(Arrays.toString(iArr2));
System.out.println(Arrays.toString(iArr3));
System.out.println(Arrays.toString(chArr));
// 배열을 그냥 출력하면 참조값이 출력됨
System.out.println(iArr3);
// char타입 배열은 print문으로 출력해도 값이 출력됨
System.out.println(chArr);
}
}
출력값
1,2,3,4,5,6,7,8,9,10,
[3, 5, 6, 6, 0, 9, 7, 9, 3, 4]
[100, 95, 80, 70, 60]
[a, b, c, d]
[I@18b4aac2
abcd
** 출처 : 남궁성의 정석코딩_자바의정석_기초편 유튜브 강의
'유튜브 공부 > JAVA의 정석 기초편(유튜브)' 카테고리의 다른 글
자바의 정석 기초편 ch5 - 12 ~ 17 [String배열, String클래스, 커맨드라인 입력받기] (1) | 2023.11.13 |
---|---|
자바의 정석 기초편 ch5 - 8 ~ 11 [배열의 활용1~4] (2) | 2023.11.09 |
자바의 정석 기초편 ch5 - 1 ~ 5 [배열, 배열의 인덱스,배열의길이,배열의초기화] (0) | 2023.11.08 |
자바의 정석 기초편 ch4 - 20 ~ 24 [break문, continue문, 이름붙은 반복문] (0) | 2023.11.08 |
자바의 정석 기초편 ch4 - 16 ~ 19 [while문, do-while문] (0) | 2023.11.07 |