๐Ÿ“’ Language/๐Ÿ“ Java

[Java] Arrays ๊ด€๋ จ

dana4056 2022. 5. 26. 23:08
320x100

Arraysํด๋ž˜์Šค

๋ฐฐ์—ด์„ ์‰ฝ๊ฒŒ ๋‹ค๋ฃฐ ์ˆ˜ ์žˆ๋Š” ๋ฐฐ์—ด ๊ด€๋ จ ๋ฉ”์„œ๋“œ๋“ค ์ •์˜๋˜์–ด์žˆ์Œ

 

๋ฐฐ์—ด ๋ณต์‚ฌ  copyOf( )   copyOfRange( ) 

copyOf( ) : ๋ฐฐ์—ด ์ฒ˜์Œ๋ถ€ํ„ฐ ์„ ํƒ(์ง€์ • ๊ฐ€๋Šฅ)๊นŒ์ง€ ๋ณต์‚ฌํ•ด์„œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ 

// Arrays.copyOf(๋ฐฐ์—ด, ๋์ธ๋ฑ์Šค(-1))

int[] arr = {0,1,2,3,4};

int[] result1 = Arrays.copyOf(arr, 2)   // result1 = {0, 1};
int[] result2 = Arrays.copyOf(arr, 6)   // result2 = {0, 1, 2, 3, 4, 0};

copyOfRange( ) : ๋ฐฐ์—ด ์„ ํƒ(์ง€์ • ๊ฐ€๋Šฅ)๋ถ€ํ„ฐ ์„ ํƒ(์ง€์ • ๊ฐ€๋Šฅ)๊นŒ์ง€ ๋ณต์‚ฌํ•ด์„œ ์ƒˆ๋กœ์šด ๋ฐฐ์—ด๋กœ ๋ฐ˜ํ™˜ 

// Arrays.copyOfRange(๋ฐฐ์—ด, ์‹œ์ž‘์ธ๋ฑ์Šค, ๋์ธ๋ฑ์Šค(-1))

int[] arr = {0,1,2,3,4};

int[] result1 = Arrays.copyOfRange(arr, 2, 5)   // result1 = {2, 3, 4};
int[] result2 = Arrays.copyOfRange(arr, 0, 6)   // result2 = {0, 1, 2, 3, 4, 0};

*์ฐธ๊ณ : ๋ฐฐ์—ด ๋ณต์‚ฌํ•˜๋Š” ๋ฐฉ๋ฒ•์€ System.arraycopy()๊ฐ€ ์„ฑ๋Šฅ์ด ๊ฐ€์žฅ ์ข‹๊ณ , Arrays.copyOf()๋Š” ์ข€ ๋” ์œ ์—ฐํ•œ ๋ฐฉ์‹

 

๋ฐฐ์—ด ์š”์†Œ ์ •๋ ฌ  sort( )  

์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ

// Arrays.sort(๋ฐฐ์—ด);

int[] arr = {5,3,4,2,1};

Arrays.sort(arr);    // arr = {1,2,3,4,5};
๋ฐ˜์‘ํ˜•