메뉴 건너뛰기

조회 수 348 추천 수 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
번호 제목 날짜 조회 수
31 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 2757
30 날짜 시간 포맷 제어 자바 클래스 : JAVA DateUtils Date time file 2016.12.09 3637
29 자바 JXL 엑셀파일을 읽어 배열리턴 : JAVA EXCEL ArrayList 2016.12.09 3131
28 다양한 문자 조합을 이용한 카운팅 구하기 2016.12.09 3604
27 BigDecimal타입의 사칙연산 2016.12.22 2605
26 jquery 스크롤(scroll) 따라다니는 배너 레이어 / 위로 버튼 / 화면 상단으로 이동 / scroll layer 이벤트 file 2017.07.04 2636
25 숫자형식 포멧 방법 2018.02.09 932
24 JDK 9에서 eclipse 실행이 안될때 2018.06.04 492
23 자바 날짜 포맷 변환 방법 file 2018.06.21 375
22 개인정보 마스킹처리 (휴대폰번호, 이메일) 2018.06.26 617
21 자바 정규식 마스킹처리 file 2018.06.26 559
20 JAVA HashMap의 Key값 출력하기 2018.07.09 374
19 JAVA public, private, protected 정리 2018.07.09 329
» JAVA TreeMap 인덱스 값 가져오기 및 Collections.sort 사용하기 2018.07.09 348
17 JAVA 인코딩을 변경하여 파일 출력하기 (EUC_KR) 2018.07.09 384
16 JAVA 두개의 문서 파일 비교하기 2018.07.09 461
15 JAVA 정규표현식을 이용한 패턴매칭(HTML 제거) 2018.07.09 388
14 JAVA CentOS JDK 설치 및 환경변수 설정 file 2018.07.09 339
13 JAVA JDK 제거하기 file 2018.07.09 330
12 JAVA JDK 제거하기 file 2018.07.09 500
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved