Bibi's DevLog ๐Ÿค“๐ŸŽ

[Java] ์ด์ฐจ์›๋ฐฐ์—ด ๋ณธ๋ฌธ

๐Ÿ–ฅ BE ๋ฐฑ์—”๋“œ/Java ์ž๋ฐ”

[Java] ์ด์ฐจ์›๋ฐฐ์—ด

๋น„๋น„ bibi 2020. 11. 16. 12:16

ํ•œ๊ธ€์‹œ๊ณ„

ํ•œ๊ธ€์‹œ๊ณ„๋ฅผ ๋”ฐ๋ผ ๋งŒ๋“œ๋Š” ํ”„๋กœ์ ํŠธ๋ฅผ ํ•˜๊ธฐ ์œ„ํ•ด, '์ด์ฐจ์›๋ฐฐ์—ด'์— ๋Œ€ํ•ด ๊ณต๋ถ€ํ•ด ๋ณด์•˜๋‹ค.


programmers.co.kr/learn/courses/5/lessons/135#note ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค. (ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค ์ž๋ฐ” ์ž…๋ฌธ - 2์ฐจ์› ๋ฐฐ์—ด)

2์ฐจ์›๋ฐฐ์—ด Two-Dimensional Array

  • ์ด์ฐจ์›๋ฐฐ์—ด์€ ๋ง ๊ทธ๋Œ€๋กœ ์ด์ฐจ์›์˜ ๋ฐฐ์—ด์ด๋‹ค.

    • ์•ž์˜ ๋Œ€๊ด„ํ˜ธ๊ฐ€ ํ–‰(๊ฐ€๋กœ์ค„, row), ๋’ค์˜ ๋Œ€๊ด„ํ˜ธ๊ฐ€ ์—ด(์„ธ๋กœ์ค„, column) ์ด๋ผ๊ณ  ์ƒ๊ฐํ•˜๋ฉด ์‰ฝ๋‹ค.
      int [][] array1 = new int[2][3]; // ์ด๋ ‡๊ฒŒ ์„ ์–ธํ•  ์ˆ˜๋„ ์žˆ๊ณ 
      int [][] array2;
      array2 = new int[2][3]; // ์ด๋ ‡๊ฒŒ ์„ ์–ธํ•  ์ˆ˜๋„ ์žˆ๋‹ค.
  • ์ด์ฐจ์›๋ฐฐ์—ด์— ๊ฐ’ ์ €์žฅํ•˜๊ธฐ

    • ์—‘์…€์ฒ˜๋Ÿผ[๊ฐ€๋กœ ์ธ๋ฑ์Šค][์„ธ๋กœ ์ธ๋ฑ์Šค]๋ฅผ ๊ฐ๊ฐ ์ •ํ•ด ์ฃผ๋ฉฐ ๊ฐ’์„ ๋Œ€์ž…ํ•ด์•ผ ํ•œ๋‹ค.
      array1[0][0] = 10; 
  • ์ด์ฐจ์›๋ฐฐ์—ด์„ ๋งŒ๋“ค ๋•Œ๋Š” ๊ฐ ๋ฐฐ์—ด์˜ ํฌ๊ธฐ๋ฅผ ๋‹ค๋ฅด๊ฒŒ ํ•˜๋Š” ๊ฒƒ๋„ ๊ฐ€๋Šฅํ•˜๋‹ค.

    int[][] array5 = new int[3][];
    //์œ„์™€ ๊ฐ™์ด ์„ ์–ธํ•˜๋ฉด array5๋Š” 3๊ฐœ์งœ๋ฆฌ ๋ฐฐ์—ด์„ ์ฐธ์กฐํ•œ๋‹ค. 3๊ฐœ์งœ๋ฆฌ ๋ฐฐ์—ด์€ ์•„์ง ์ฐธ์กฐํ•˜๋Š” ๋ฐฐ์—ด์ด ์—†๋‹ค๋Š” ๊ฒƒ์„ ์˜๋ฏธ.
    
    array5[0] = new int[1]; //์ •์ˆ˜๋ฅผ ํ•˜๋‚˜ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด์„œ array5 ์˜ 0 ๋ฒˆ์งธ ์ธ๋ฑ์Šค๊ฐ€ ์ฐธ์กฐํ•œ๋‹ค.  
    array5[1] = new int[2]; //์ •์ˆ˜๋ฅผ ๋‘๊ฐœ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด์„œ array5 ์˜ 1 ๋ฒˆ์งธ ์ธ๋ฑ์Šค๊ฐ€ ์ฐธ์กฐํ•œ๋‹ค.  
    array5[2] = new int[3]; //์ •์ˆ˜๋ฅผ ์„ธ๊ฐœ ๋‹ด์„ ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด์„ ์ƒ์„ฑํ•ด์„œ array5 ์˜ 2 ๋ฒˆ์งธ ์ธ๋ฑ์Šค๊ฐ€ ์ฐธ์กฐํ•œ๋‹ค. 
    // ์ด๋ ‡๊ฒŒ ๋งŒ๋“ค๋ฉด ๊ณ„๋‹จ ๋ชจ์–‘์˜ ์ด์ฐจ์›๋ฐฐ์—ด์„ ๋งŒ๋“ค ์ˆ˜ ์žˆ๋‹ค.
  • ์ด์ฐจ์›๋ฐฐ์—ด ์„ ์–ธํ•˜๋ฉด์„œ ๊ฐ’ ์ง€์ •ํ•˜๊ธฐ

    • int [][]twoDim = {{1,2,3}, {4,5,6}}; ์ฒ˜๋Ÿผ ๊ฐ„๋‹จํ•˜๊ฒŒ ํ•  ์ˆ˜๋„ ์žˆ๋‹ค.