메뉴 건너뛰기

조회 수 438 추천 수 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
번호 제목 날짜 조회 수
37 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 2937
36 날짜 시간 포맷 제어 자바 클래스 : JAVA DateUtils Date time file 2016.12.09 3913
35 자바 JXL 엑셀파일을 읽어 배열리턴 : JAVA EXCEL ArrayList 2016.12.09 3279
34 다양한 문자 조합을 이용한 카운팅 구하기 2016.12.09 3832
33 BigDecimal타입의 사칙연산 2016.12.22 2747
32 jquery 스크롤(scroll) 따라다니는 배너 레이어 / 위로 버튼 / 화면 상단으로 이동 / scroll layer 이벤트 file 2017.07.04 2879
31 숫자형식 포멧 방법 2018.02.09 1060
30 JDK 9에서 eclipse 실행이 안될때 2018.06.04 596
29 자바 날짜 포맷 변환 방법 file 2018.06.21 497
28 개인정보 마스킹처리 (휴대폰번호, 이메일) 2018.06.26 908
27 자바 정규식 마스킹처리 file 2018.06.26 854
26 JAVA HashMap의 Key값 출력하기 2018.07.09 527
25 JAVA public, private, protected 정리 2018.07.09 422
» JAVA TreeMap 인덱스 값 가져오기 및 Collections.sort 사용하기 2018.07.09 438
23 JAVA 인코딩을 변경하여 파일 출력하기 (EUC_KR) 2018.07.09 482
22 JAVA 두개의 문서 파일 비교하기 2018.07.09 635
21 JAVA 정규표현식을 이용한 패턴매칭(HTML 제거) 2018.07.09 488
20 JAVA CentOS JDK 설치 및 환경변수 설정 file 2018.07.09 484
19 JAVA JDK 제거하기 file 2018.07.09 429
18 JAVA JDK 제거하기 file 2018.07.09 667
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved