메뉴 건너뛰기

조회 수 1656 추천 수 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
번호 제목 날짜 조회 수
72 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 4298
71 날짜 시간 포맷 제어 자바 클래스 : JAVA DateUtils Date time file 2016.12.09 5364
70 자바 JXL 엑셀파일을 읽어 배열리턴 : JAVA EXCEL ArrayList 2016.12.09 4504
69 다양한 문자 조합을 이용한 카운팅 구하기 2016.12.09 5047
68 BigDecimal타입의 사칙연산 2016.12.22 3809
67 jquery 스크롤(scroll) 따라다니는 배너 레이어 / 위로 버튼 / 화면 상단으로 이동 / scroll layer 이벤트 file 2017.07.05 4185
66 숫자형식 포멧 방법 2018.02.09 2480
65 JDK 9에서 eclipse 실행이 안될때 2018.06.05 1717
64 자바 날짜 포맷 변환 방법 file 2018.06.21 1569
63 개인정보 마스킹처리 (휴대폰번호, 이메일) 2018.06.26 4070
62 자바 정규식 마스킹처리 file 2018.06.26 2739
61 JAVA HashMap의 Key값 출력하기 2018.07.09 1197
60 JAVA public, private, protected 정리 2018.07.09 1110
» JAVA TreeMap 인덱스 값 가져오기 및 Collections.sort 사용하기 2018.07.09 1656
58 JAVA 인코딩을 변경하여 파일 출력하기 (EUC_KR) 2018.07.09 1207
57 JAVA 두개의 문서 파일 비교하기 2018.07.09 2505
56 JAVA 정규표현식을 이용한 패턴매칭(HTML 제거) 2018.07.09 1264
55 JAVA CentOS JDK 설치 및 환경변수 설정 file 2018.07.09 1930
54 JAVA JDK 제거하기 file 2018.07.09 1512
53 JAVA 이클립스 인코딩 변경하기 file 2018.07.09 1724
Board Pagination Prev 1 2 3 4 5 6 7 8 Next
/ 8

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved