λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°

#1 Language πŸ‘„/1-4 JAVA

[JAVA] λ°°μ—΄ (Array)

λ°°μ—΄(Array)

 

 

  • λ³€μˆ˜μ—λŠ” ν•˜λ‚˜μ˜ κ°’λ§Œ 담을 수 μžˆλ‹€
  • μ—¬λŸ¬ 개 값을 μ‚¬μš©ν•˜λŠ” λ³€μˆ˜λ₯Ό λ§Œλ“€κ³  μ‹ΆμœΌλ©΄ 배열을 μ‚¬μš©
λ°°μ—΄ μ„ μ–Έ

배열을 μ„ μ–Έν•˜λŠ” 2κ°€μ§€ 방식

λ³€μˆ˜ νƒ€μž…[ ] λ°°μ—΄ 이름 ex) int[  ] score;
λ³€μˆ˜ νƒ€μž… λ°°μ—΄ 이름 [ ]   ex) int score[  ];

 

λ°°μ—΄ μ΄ˆκΈ°ν™”
  • λ°°μ—΄μ˜ 값듀을 직접 μž…λ ₯
λ³€μˆ˜ νƒ€μž…[  ] λ°°μ—΄ 이름 = {κ°’1, κ°’2...}

ex) int[ ] score = {100, 90, 80}
  • new ν‚€μ›Œλ“œ μ‚¬μš© ν•˜μ—¬ μ΄ˆκΈ°ν™”
- λ³€μˆ˜ νƒ€μž…[  ] λ°°μ—΄ 이름 = new λ³€μˆ˜ νƒ€μž…[ ]{κ°’1, κ°’2, κ°’3....}
    
    ex) int[ ] score = new int[ ] {100, 90, 80}
  • new ν‚€μ›Œλ“œλ₯Ό μ‚¬μš©ν•˜μ—¬ λ°°μ—΄μ˜ 길이만 μ§€μ • ν›„ 값을 λͺ¨λ‘ μ΄ˆκΈ°ν™”
  • λ³€μˆ˜ νƒ€μž…μ— 따라 μ΄ˆκΈ°ν™”λ˜λŠ” 값이 달라짐
λ³€μˆ˜ νƒ€μž…[ ] λ°°μ—΄ 이름 = new λ³€μˆ˜ νƒ€μž…[λ°°μ—΄μ˜ 길이]

ex) int[ ] score = new int[3]
// μ½”λ“œ μ‹€μŠ΅

public class _01_array {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 1. κ°’ μ§€μ •ν•˜μ—¬ λ°°μ—΄ μ΄ˆκΈ°ν™”
		int[] score1 = {100, 90, 80};
		
		// .length λ©”μ†Œλ“œ : λ°°μ—΄μ˜ 길이 리턴
		// .length λ©”μ†Œλ“œλŠ” μ½κΈ°μ „μš© λ©”μ†Œλ“œλΌμ„œ κ°’μ˜ 변경이 λΆˆκ°€λŠ₯
		// score1.length = 10; 이런 λ°©μ‹μ˜ κ°’ λŒ€μž… λΆˆκ°€λŠ₯
		for(int i = 0; i < score1.length; i++) {
			//λ°°μ—΄μ˜ μš”μ†Œ ν•˜λ‚˜ν•˜λ‚˜μ— μ ‘κ·Όν•˜λŠ” 방식, λ°°μ—΄ 이름 [μš”μ†Œμ˜ 인덱슀]
			System.out.println(score1[i]);
		}
		System.out.println("---------------------");
		
		// 2. new ν‚€μ›Œλ“œλ‘œ μ΄ˆκΈ°ν™”
		int score2[] = new int[] {75, 85, 100};
		
		for(int j = 0; j < score2.length; j++) {
			System.out.println(score2[j]);
		}
		System.out.println("---------------------");
		
		// 3. new ν‚€μ›Œλ“œλ‘œ 길이만 μ§€μ •ν•˜κ³  μ΄ˆκΈ°ν™”
		// λ³€μˆ˜ νƒ€μž…μ— 따라 μ΄ˆκΈ°ν™” 값이 닀름
		int[] score3 = new int[3];
		String[] str = new String[3];
		
		// μ΄ˆκΈ°ν™”λœ λ°°μ—΄ λ³€μˆ˜μ˜ κ°’ λ³€κ²½
		// λ°°μ—΄μ˜ μš”μ†Œμ— 직접 κ°’ μž…λ ₯
		score3[1] = 100;
		str[2] = "hello";
		
		for(int k = 0; k < score3.length; k++) {
			System.out.println(score3[k]);
		}
		
		for(int h = 0; h < str.length; h++) {
			System.out.println(str[h]);
		}
		System.out.println("---------------------");
	
	}

}

 

λ°°μ—΄μ˜ 볡사
  • for문을 이용
int[] score1 = {100, 90, 80};
int[] score2 = new int[5];

for(int i = 0; i < score1.length; i++) {
	score2[i] = score1[i]
}
  • System.arraycopy( ) λ©”μ†Œλ“œ 이용
System.arraycopy(원본 λ°°μ—΄μ˜ 이름, 볡사할 인덱슀, 볡사될 λŒ€μƒμ˜ λ°°μ—΄μ˜ 이름, μƒˆ 배열에 볡사가 μ‹œμž‘λ˜λŠ” 인덱슀, 볡사될 개수)
String[] str1 = {"java", "hello"};
String[] str2 = new String[3];
System.arraycopy(str1, 0, str2, 0, str1.length);
// μ½”λ”© μ‹€μŠ΅

package Day02;

public class _02_copyOfarray {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		// 1. forλ¬Έ μ΄μš©ν•œ λ°°μ—΄ 볡사
		// λ°°μ—΄μ˜ μš”μ†Œκ°’μ„ 직접 μž…λ ₯ν•˜μ—¬ 볡사
		int[] score1 = {100, 90, 80};
		int[] score2 = new int[5];
		
		for(int i = 0; i < score1.length; i++) {
			score2[i] = score1[i];
			System.out.println(score2[i]);
		}
		System.out.println("----------------------");
		
		// 2. arraycopy() λ©”μ†Œλ“œ μ΄μš©ν•œ λ°°μ—΄ 볡사
		String[] str1 = {"hello", "java"};
		String[] str2 = new String[3];
		
		System.arraycopy(str1, 0, str2, 0, str1.length);
		
		for(int j = 0; j < str2.length; j++) {
			System.out.println(str2[j]);
		}
		System.out.println("----------------------");
	}

}

 

ν–₯μƒλœ forλ¬Έ

배열을 μ΄μš©ν•˜μ—¬ μ΄ˆκΈ°ν™”λœ λ³€μˆ˜ 없이 forλ¬Έ μ‚¬μš© κ°€λŠ₯

public class _03_advancedFor {

	public static void main(String[] args) {
		// TODO Auto-generated method stub
		int[] scores = {100, 90, 80};
		int sum = 0;

		//scores λ°°μ—΄μ˜ μš”μ†Œ 개수만큼 반볡
		//scores λ°°μ—΄μ˜ μš”μ†Œ ν•˜λ‚˜μ”© κΊΌλ‚΄μ„œ score λ³€μˆ˜μ— λ‹΄μ•„μ„œ μ‚¬μš©
		for(int score : scores) {
			sum += score;
		}
		
		System.out.println("점수의 총합은 : " + sum );
	}

}
LIST

'#1 Language πŸ‘„ > 1-4 JAVA' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[JAVA] 객체와 클래슀  (0) 2022.11.06
[JAVA] μ—΄κ±° νƒ€μž…(Enum)  (0) 2022.11.06
[JAVA] 반볡문  (0) 2022.07.21
[JAVA] 쑰건문  (0) 2022.07.21
[JAVA] μ—°μ‚°μž (Operator)  (0) 2022.07.20