Java - ์ •๋ ฌ

2024. 1. 14. 21:46ยท ๐Ÿ”ฅ Algorithm/PS
๋ชฉ์ฐจ
  1. Arrays.sort()
  2.  
  3. ์ปค์Šคํ…€ ์ •๋ ฌ (์˜ค๋ฆ„์ฐจ์ˆœ)
  4.  
  5. CompareTo()
  6. List (Java 8 ์ดํ›„)
  7. List.sort()
  8. ์ปค์Šคํ…€ ์ •๋ ฌ

Array

Arrays.sort()

int[] numbers = new int[]{3, 30, 34, 5, 9};
// 0. ๊ฐ„๋‹จ ์ถœ๋ ฅ
System.out.println(Arrays.toString(numbers));
// [3, 30, 34, 5, 9]

// 1. ์˜ค๋ฆ„์ฐจ์ˆœ
Arrays.sort(numbers);

// 2. ๋‚ด๋ฆผ์ฐจ์ˆœ
Arrays.sort(numbers. Collections.reverseOrder());

 

์ปค์Šคํ…€ ์ •๋ ฌ (์˜ค๋ฆ„์ฐจ์ˆœ)

int[] numbers = new int[]{3, 30, 34, 5, 9};

// 1. ๋žŒ๋‹คํ•จ์ˆ˜
Arrays.sort(numbers, (n1, n2) -> (n1).compareTo(n2));

// 2. ์˜ค๋ฒ„๋ผ์ด๋”ฉ
Arrays.sort(strings, new Comparator<int>(){
           @Override
            public int compare(int n1, int n2) {
                return n1.compareTo(n2);
                // return n1 - n2;
            }
        });

 

CompareTo()

a.compareTo(b) a, b, c, ...

  • ์˜ค๋ฆ„์ฐจ์ˆœ
  • a > b ์ธ ์ˆœ์—ด์„ ์œ ์ง€
  • a < b๋ผ๋ฉด, a ์™€ b์˜ ์ˆœ์„œ ๋ณ€๊ฒฝ

CompareTo() ์‘์šฉ

  • ex. ์ˆซ์ž๋“ค์„ ์—ฐ์†์œผ๋กœ ์ด์–ด๋ถ™์˜€์„ ๋•Œ, ํฐ ์ˆซ์ž๋ฅผ ๋งŒ๋“ค์–ด๋ผ. (s1 = "3", s2 = "34", 334 s1, s2, s3, ..)
  • s2+s1 (343)๊ฐ€ s1+s2 (334)๋ณด๋‹ค ํฌ๋ฉด, s1๊ณผ s2์œ„์น˜ ๋ณ€๊ฒฝ => 343 s2, s1, s3, ...
    String[] strings = new String[]{"5", "53", "50", "9"}
    
    // 1
    Arrays.sort(strings, (s1, s2) -> (s2+s1).compareTo(s1+s2));
    
    // 2
    Arrays.sort(strings, new Comparator(){
    	@Override
    	public int compare(String s1, String s2) {
    		return (s2+s1).compareTo(s1+s2);
    	}
    });

 


List (Java 8 ์ดํ›„)

List.sort()

ArrayList<String> list = new ArrayList<>(Arrays.asList("C", "A", "a"));

// 0. ๊ฐ„๋‹จ ์ถœ๋ ฅ
System.out.println(list);
// [C, A, a]

// 1. ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
list.sort(Comparator.naturalOrder());

// 2. ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ
list.sort(Comparator.reverseOrder());

// 3. ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„์—†์ด ์˜ค๋ฆ„์ฐจ์ˆœ ์ •๋ ฌ
list.sort(String.CASE_INSENSITIVE_ORDER);

// 4. ๋Œ€์†Œ๋ฌธ์ž ๊ตฌ๋ถ„์—†์ด ๋‚ด๋ฆผ์ฐจ์ˆœ ์ •๋ ฌ
list.sort(Collections.reverseOrder(String.CASE_INSENSITIVE_ORDER));

 

์ปค์Šคํ…€ ์ •๋ ฌ

ArrayList<Integer> list = new ArrayList<>(Arrays.asList(1, 2, 3));

// 1. ์˜ค๋ฆ„์ฐจ์ˆœ
list.sort(Integer::compareTo);

// 2. ๋‚ด๋ฆผ์ฐจ์ˆœ
list.sort((n1, n2) -> n2.compareTo(n1));
  1. Arrays.sort()
  2.  
  3. ์ปค์Šคํ…€ ์ •๋ ฌ (์˜ค๋ฆ„์ฐจ์ˆœ)
  4.  
  5. CompareTo()
  6. List (Java 8 ์ดํ›„)
  7. List.sort()
  8. ์ปค์Šคํ…€ ์ •๋ ฌ
sckwon770
sckwon770
sckwon770
sckwon770
sckwon770
์ „์ฒด
์˜ค๋Š˜
์–ด์ œ
  • ๋ถ„๋ฅ˜ ์ „์ฒด๋ณด๊ธฐ (58)
    • ๐Ÿš€ Activity (6)
      • Project (5)
      • Experience (1)
    • ๐Ÿค– Backend (28)
      • Linux (1)
      • SpringBoot (15)
      • Database (7)
      • Web (2)
      • Cloud (2)
      • Test (1)
    • ๐Ÿ›  ๊ฐœ๋ฐœ์ž (1)
      • ํšŒ๊ณ  (0)
      • ๋…์„œ (1)
    • ๐Ÿ”ฅ Algorithm (5)
      • ๋ฐฑ์ค€ (2)
      • ํ”„๋กœ๊ทธ๋ž˜๋จธ์Šค (1)
      • PS (1)
    • ๐Ÿ‘พ CS (0)
    • Python (2)
      • Programming (0)
      • PS Skills (0)
    • Csharp (15)

๋ธ”๋กœ๊ทธ ๋ฉ”๋‰ด

  • ํ™ˆ
  • ํƒœ๊ทธ
  • ๋ฐฉ๋ช…๋ก

๊ณต์ง€์‚ฌํ•ญ

์ธ๊ธฐ ๊ธ€

ํƒœ๊ทธ

  • springboot
  • ULID
  • jacoco
  • C#
  • WPF
  • JPA
  • CS
  • Hibernate
  • ํ…Œ์ŠคํŠธ
  • ํŒŒ์ด์ฌ
  • SSH
  • Python
  • ์ธ๋ฑ์Šค
  • TSID
  • SWAGGER
  • ThreadPoolTaskExecutor
  • java
  • mysql
  • ๋ฆฌ๋ทฐ๋ฉ”์ดํŠธ
  • algorithm

์ตœ๊ทผ ๋Œ“๊ธ€

์ตœ๊ทผ ๊ธ€

hELLO ยท Designed By ์ •์ƒ์šฐ.v4.2.2
sckwon770
Java - ์ •๋ ฌ
์ƒ๋‹จ์œผ๋กœ

ํ‹ฐ์Šคํ† ๋ฆฌํˆด๋ฐ”

๋‹จ์ถ•ํ‚ค

๋‚ด ๋ธ”๋กœ๊ทธ

๋‚ด ๋ธ”๋กœ๊ทธ - ๊ด€๋ฆฌ์ž ํ™ˆ ์ „ํ™˜
Q
Q
์ƒˆ ๊ธ€ ์“ฐ๊ธฐ
W
W

๋ธ”๋กœ๊ทธ ๊ฒŒ์‹œ๊ธ€

๊ธ€ ์ˆ˜์ • (๊ถŒํ•œ ์žˆ๋Š” ๊ฒฝ์šฐ)
E
E
๋Œ“๊ธ€ ์˜์—ญ์œผ๋กœ ์ด๋™
C
C

๋ชจ๋“  ์˜์—ญ

์ด ํŽ˜์ด์ง€์˜ URL ๋ณต์‚ฌ
S
S
๋งจ ์œ„๋กœ ์ด๋™
T
T
ํ‹ฐ์Šคํ† ๋ฆฌ ํ™ˆ ์ด๋™
H
H
๋‹จ์ถ•ํ‚ค ์•ˆ๋‚ด
Shift + /
โ‡ง + /

* ๋‹จ์ถ•ํ‚ค๋Š” ํ•œ๊ธ€/์˜๋ฌธ ๋Œ€์†Œ๋ฌธ์ž๋กœ ์ด์šฉ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ํ‹ฐ์Šคํ† ๋ฆฌ ๊ธฐ๋ณธ ๋„๋ฉ”์ธ์—์„œ๋งŒ ๋™์ž‘ํ•ฉ๋‹ˆ๋‹ค.