메뉴 건너뛰기

조회 수 291 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
import java.io.*;







// Collection.sort를 사용하기 위해서 필요하다.  

class MyComp implements Comparator<result> {
     public int compare(result o1, result o2) {
          if (o1.a > o2.b) return -1;
          else if (o1.a < o2.b) return 1;
          else return 0;
     }
}




class result{
     int a; 
     int b;
}




public class Test_java {
     public static void main(String[] ar) {
          File a = new File("./aaa.txt");
          Scanner sc = null;
          try {
               sc = new Scanner(a);
          }catch(IOException e) {
               System.err.println(e);
               System.out.println("파일 스캔 에러");
               System.exit(1);
            }
  
  ArrayList<String> al = new ArrayList<String>();
  ArrayList<result> a2 = new ArrayList<result>();
  
  while(sc.hasNext()) {
       al.add(sc.nextLine());
   
       result re = new result(); 
       re.a = 1; 
       re.b = 2;
 

       a2.add(re);
   
  }
    
  Collections.sort(al);
  Collections.sort(a2, new MyComp());
  
  
  // TreeMap 입력 및 출력 부분. 
  TreeMap<String, Integer> tm = new TreeMap<String, Integer>();
  
  for(int i = 0; i < al.size(); i++) {
   tm.put(al.get(i), 1); 
  }
  
  // TreeMap index값 가져오기.
  Set cla = tm.keySet();
  String[] strArr = new String[cla.size()];
  strArr = (String[]) cla.toArray(strArr);
  
  for(int i = 0 ; i < strArr.length ; i++){
       System.out.println("TreeMap index = " + strArr[i]);
  }
  
  // 파일 출력부분 입니다.
  PrintWriter pw = null;
  try {
   pw = new PrintWriter(new BufferedWriter(new FileWriter(new File("./bbb.txt"))));
  }catch(IOException e) {
       System.out.println("파일 쓰기 에러");
       System.exit(1);
  }
  
  for(int i = 0; i < al.size(); i++) 
   pw.println(al.get(i));
  
  pw.close();
    }
}


TreeMap의 경우, 자동으로 key 값을 기준으로 정렬이 된다. 그러나, key 값이 아닌 value 값으로 정렬을 하고자 한다면, TreeMap의 값들을 ArrayList에 저장후, Collections.sort를 이용하면 된다. 이것은 HashMap의 경우도 동일하다. 


List of Articles
번호 제목 날짜 조회 수
25 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 2684
24 날짜 시간 포맷 제어 자바 클래스 : JAVA DateUtils Date time file 2016.12.09 3503
23 자바 JXL 엑셀파일을 읽어 배열리턴 : JAVA EXCEL ArrayList 2016.12.09 3071
22 다양한 문자 조합을 이용한 카운팅 구하기 2016.12.09 3483
21 BigDecimal타입의 사칙연산 2016.12.22 2506
20 jquery 스크롤(scroll) 따라다니는 배너 레이어 / 위로 버튼 / 화면 상단으로 이동 / scroll layer 이벤트 file 2017.07.04 2485
19 숫자형식 포멧 방법 2018.02.09 869
18 JDK 9에서 eclipse 실행이 안될때 2018.06.04 441
17 자바 날짜 포맷 변환 방법 file 2018.06.21 316
16 개인정보 마스킹처리 (휴대폰번호, 이메일) 2018.06.26 463
15 자바 정규식 마스킹처리 file 2018.06.26 440
14 JAVA HashMap의 Key값 출력하기 2018.07.09 303
13 JAVA public, private, protected 정리 2018.07.09 265
» JAVA TreeMap 인덱스 값 가져오기 및 Collections.sort 사용하기 2018.07.09 291
11 JAVA 인코딩을 변경하여 파일 출력하기 (EUC_KR) 2018.07.09 316
10 JAVA 두개의 문서 파일 비교하기 2018.07.09 371
9 JAVA 정규표현식을 이용한 패턴매칭(HTML 제거) 2018.07.09 327
8 JAVA CentOS JDK 설치 및 환경변수 설정 file 2018.07.09 266
7 JAVA JDK 제거하기 file 2018.07.09 273
6 JAVA JDK 제거하기 file 2018.07.09 390
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6

하단 정보를 입력할 수 있습니다

© k2s0o1d4e0s2i1g5n. All Rights Reserved