자바 배열 출력하기
💫 for문을 돌리지 않고 배열 고대로 출력하기
자바는 print(배열변수) 를 하면 배열 자체의 주소를 출력한다.
이 때 사용하는 메소드가 Arrays.toString(object[] o) 가 된다.
public class Array {
public static void main(String[] args){
int arr1[] = {1,2,3};
String arr2[] = {"J", "A", "V", "A"};
System.out.println(arr1);
System.out.println(arr2);
System.out.println(Arrays.toString(arr1));
System.out.println(Arrays.toString(arr2));
}
}
를 실행하면
이 출력된다.
💫 String 문자열을 char 배열에 한 글자씩 저장하기
첫 번째 방법은 for문을 이용하는 방법이다.
for문을 돌리는건 charAt() 메소드를 사용하면 된다.
import java.util.Arrays;
public class ArrayTest2 {
public static void main(String[] args){
String str = "Hello JAVA ^^";
char[] chars = new char[str.length()];
for(int i = 0; i < chars.length; i++)
chars[i] = str.charAt(i);
System.out.println(Arrays.toString(chars));
}
}
결과
[H, e, l, l, o, , J, A, V, A, , ^, ^]
두 번째 방법은 메소드를 이용하는 방법이다.
toCharArray() 메소드를 사용하면 된다.
public class ArrayTest2 {
public static void main(String[] args){
String str = "Hello JAVA ^^";
char[] chars = str.toCharArray();
System.out.println(Arrays.toString(chars));
}
}
결과
[H, e, l, l, o, , J, A, V, A, , ^, ^]
💫 Char to int
char 을 int으로 형변환을 하는 방법은 -'0'을 넣어주면 된다.
0의 아스키코드는 48이고 숫자 1의 아스키코드는 49이기 때문에.. '1'-'0' = 1이 되는 것이다.
public class ArrayTest3 {
public static void main(String[] args){
String str = "12345";
char[] chars = str.toCharArray(); // [1,2,3,4,5]
int sum = 0;
for(int i= 0; i < chars.length; i++)
sum += chars[i] - '0';
System.out.printf("sum: %d%n", sum);
}
}
결과
sum: 15
💫 Char[] to String
다음은 char[] 배열 안에있는 값을 합쳐서 String으로 만드는 방법이다.
toCharArray() 메소드를 사용하면 된다.
public class ArrayTest3 {
public static void main(String[] args){
String str = "자바 조아";
char[] chars = str.toCharArray();
System.out.println(String.valueOf(chars));
}
}
결과
자바 조아
'알고리즘 > 자료구조와 알고리즘' 카테고리의 다른 글
[Python] 배열, 2차원 배열 만들기, 2차원 배열 입력받기 (0) | 2022.03.10 |
---|---|
[Python] 내 마음대로 정리하는 파이썬 (0) | 2022.03.06 |
<문제> 효율적인 화폐 구성 (Dynamic Programming) (0) | 2022.02.21 |
<문제> 1로 만들기 (Dynamic Programming) (0) | 2022.02.21 |
<문제> 개미 전사 (Dynamic Programming) (0) | 2022.02.21 |