๋ค์ด๊ฐ๊ธฐ์ ์์..
java.util ํจํค์ง
- java.util ํจํค์ง์๋ ํ๋ก๊ทธ๋จ์ ๊ฐ๋ฐํ๋ ๋ฐ ์ฌ์ฉํ ์ ์๋ ์ ์ฉํ ์ ํธ๋ฆฌํฐ ํด๋์ค๊ฐ ๋ค์ ํฌํจ๋์ด ์์
- ์ค์ ๋ก java.lang ํจํค์ง ๋ค์์ผ๋ก ๊ฐ์ฅ ๋ง์ด ์ฌ์ฉํ๋ ํจํค์ง
- import๋ฌธ์ ์ฌ์ฉํ์ง ์์๋ ์ฌ์ฉํ ์ ์๋ java.lang๊ณผ ๋ฌ๋ฆฌ java.util ํจํค์ง๋ import ๋ฌธ์ผ๋ก ํจํค์ง๋ฅผ ๋ถ๋ฌ์์ผ ํด๋์ค ์ด๋ฆ๋ง ์ฌ์ฉ ๊ฐ๋ฅ
java.util.Arrays ํด๋์ค
- Arrays ํด๋์ค์๋ ๋ฐฐ์ด์ ๋ค๋ฃจ๊ธฐ ์ํ ๋ค์ํ ๋ฉ์๋๊ฐ ํฌํจ๋์ด ์์
binarySearch() ๋ฉ์๋
- ์ด๋ถ ๊ฒ์ ์๊ณ ๋ฆฌ์ฆ(๋ฐ์ฉ ๋ฒ์๋ฅผ ์ชผ๊ฐ๋ฉฐ ๊ฒ์) ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ์ ๋ ฌ(sort())์ด ๋์ด ์์ด์ผ ํจ!!
- ํด๋น ์์น ๋ฐํ
๐ธ sort() ๋ฉ์๋
์ค๋ฆ ์ฐจ์ ์ ๋ ฌ
- sort() ๋ฉ์๋๋ ์ ๋ฌ๋ฐ์ ๋ฐฐ์ด์ ๋ชจ๋ ์์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌํฉ๋๋ค.
import java.util.Arrays;
public class Main {
public static void main(String[] args) {
int[] arr = {5,1,2,3,4};
Arrays.sort(arr);
for(int e : arr) System.out.print(e + " ");
}
}
1 2 3 4 5
โญ ๋ด๋ฆผ ์ฐจ์ ์ ๋ ฌ
compare() ์ค๋ฒ๋ผ์ด๋ฉ ํด์ ์ฌ์ฉ
import java.util.Arrays;
import java.util.Comparator;
public class Main {
public static void main(String[] args) {
Integer[] arr = {5,1,2,3,4};
Arrays.sort(arr, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
if(o1 < o2) return 1;
return -1;
}
});
for(int e : arr) System.out.print(e + " ");
}
}
5 4 3 2 1
asList() ๋ฉ์๋
- ์ผ๋ฐ ๋ฐฐ์ด์ ArrayList๋ก ๋ณํ
List<int[]> list = Arrays.asList(arr);
๐ก ์ฐ์ต๋ฌธ์
- ๋ฐฐ์ด์ ๊ฐฏ์ ์ ๋ ฅ
- ์ฐพ์ ์ ์ ๋ ฅ
- ๋ฐฐ์ด์ ์์๋ฅผ
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌํ๊ณ , ์ฐพ์ ์์ ์ธ๋ฑ์ค ์ถ๋ ฅํ๋ผ. - ๋ฐฐ์ด์ ์์๋ฅผ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ ํ ์ฐพ์ ์์ ์ธ๋ฑ์ค๋ฅผ ์ถ๋ ฅํ๋ผ.
๋ด๋ฆผ์ฐจ์์ผ๋ก ์ ๋ ฌ ํ ์คํํ๋ฉด ํ๋ฆฐ ๊ฐ์ด ๊ณ์ ์ถ๋ ฅ๋๋ ๋ฌธ์ ๋ฐ๊ฒฌ!
์์๋ณด๋..binarySearch()๋ ์ค๋ฆ์ฐจ์์ผ๋ก ์ ๋ ฌ๋ ๋ฐฐ์ด์์ ํค ๊ฐ์ ์ฐพ๋๋ค๊ณ ํจ.
import java.util.Arrays;
import java.util.Comparator;
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int num = sc.nextInt();
int key = sc.nextInt();
Integer[] arr = new Integer[num];
for(int i = 0; i < arr.length; i++) {
arr[i] = (int)(Math.random() * num) + 1;
}
Arrays.sort(arr);
for(int e : arr) System.out.print(e + " ");
System.out.println();
int rst = Arrays.binarySearch(arr,key);
if(rst >= 0)System.out.println("์ธ๋ฑ์ค : " + rst);
else System.out.println("์ฐพ๋ ๊ฐ์ด ์์ต๋๋ค.");
}
}
10
5
1 3 4 5 5 6 7 8 9 10
์ธ๋ฑ์ค : 4
๐ก ์ฐ์ต๋ฌธ์ 2
- ์์์ ๊ณผ์ผ ์ด๋ฆ 10๊ฐ์ ๋ฐฐ์ด ์์ฑ
- ๊ธธ์ด ์์ผ๋ก ์ ๋ ฌํ๊ณ , ๊ธธ์ด๊ฐ ๊ฐ์ผ๋ฉด ์ฌ์ ์์ผ๋ก ์ ๋ ฌ ํ ์ถ๋ ฅํ๋ผ
(compareTo() ๋ฉ์๋ ์ฌ์ฉ)
import java.util.Arrays;
import java.util.Comparator;
public class Practice {
public static void main(String[] args) {
String[] fruit = {"cherry", "banana", "pear", "lemon", "watermelon", "orange", "apple",
"blueberry", "strawberry", "tomato"};
Arrays.sort(fruit, new Comparator<String>() {
@Override
public int compare(String o1, String o2) {
if(o1.length() > o2.length()) return 1;
else if(o1.length() == o2.length()) return o1.compareTo(o2);
return -1;
}
});
for(String e : fruit) System.out.print(e + " ");
}
}
pear apple lemon banana cherry orange tomato blueberry strawberry watermelon
์์๊ฐ์ด๋ฉด ํ ์ํ ์ ์ง, ์์๋ฉด ์ ๋ ฌํ๋ผ..๋ฅผ ์ด์ฉํด์ return๋ฌธ ์กฐ์
๐ธ compareTo()
์ฐ์ต
public class Main {
public static void main(String[] args) {
String test = "abcd";
System.out.println(test.compareTo("ab"));
System.out.println(test.compareTo("abcd"));
System.out.println(test.compareTo("abcdefg"));
2
0
-3
๋น๊ตํ๋ ๊ฐ์ด ์์ผ๋ฉด ์์
๋น๊ตํ๋ ๊ฐ๊ณผ ๊ฐ์ผ๋ฉด 0
๋น๊ตํ๋ ๊ฐ์ด ํฌ๋ฉด ์์
'๐๏ธ Backend > Java' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
์๋ฐ(Java) - ์ปฌ๋ ์ ํ๋ ์์ํฌ (0) | 2023.01.30 |
---|---|
์๋ฐ(Java) - Generics ์ง๋ค๋ฆญ์ค/์ ๋ค๋ฆญ (0) | 2023.01.27 |
์๋ฐ(Java) - API ํด๋์ค (6) Wrapper ํด๋์ค (0) | 2023.01.27 |
์๋ฐ(Java) - API ํด๋์ค (5) Date, Calendar ํด๋์ค (0) | 2023.01.26 |
์๋ฐ(Java) - API ํด๋์ค (4) Enum ํด๋์ค (0) | 2023.01.26 |