메뉴 건너뛰기

조회 수 472 추천 수 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
번호 제목 날짜 조회 수
97 JAVA 정규표현식을 이용한 패턴매칭(HTML 제거) 2018.07.09 511
96 JAVA 두개의 문서 파일 비교하기 2018.07.09 690
95 JAVA 인코딩을 변경하여 파일 출력하기 (EUC_KR) 2018.07.09 507
» JAVA TreeMap 인덱스 값 가져오기 및 Collections.sort 사용하기 2018.07.09 472
93 JAVA public, private, protected 정리 2018.07.09 444
92 JAVA HashMap의 Key값 출력하기 2018.07.09 556
91 자바 정규식 마스킹처리 file 2018.06.26 926
90 개인정보 마스킹처리 (휴대폰번호, 이메일) 2018.06.26 973
89 자바 날짜 포맷 변환 방법 file 2018.06.21 533
88 JDK 9에서 eclipse 실행이 안될때 2018.06.04 638
87 숫자형식 포멧 방법 2018.02.09 1103
86 jquery 스크롤(scroll) 따라다니는 배너 레이어 / 위로 버튼 / 화면 상단으로 이동 / scroll layer 이벤트 file 2017.07.04 2937
85 BigDecimal타입의 사칙연산 2016.12.22 2791
84 다양한 문자 조합을 이용한 카운팅 구하기 2016.12.09 3907
83 자바 JXL 엑셀파일을 읽어 배열리턴 : JAVA EXCEL ArrayList 2016.12.09 3330
82 날짜 시간 포맷 제어 자바 클래스 : JAVA DateUtils Date time file 2016.12.09 3999
81 자바 다양한 형변환. 그리고 아스키 코드 String char int : JAVA 2016.12.09 2980
80 자바 XML 제어 라이브러리 XStream : JAVA 2016.12.09 3850
79 원하는 패턴의 날짜 구하기 : JAVA 2016.12.09 2807
78 iBATIS 동적으로 맵핑하기 2016.12.09 3021
Board Pagination Prev 1 2 3 4 5 6 Next
/ 6

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

© k2s0o1d4e0s2i1g5n. All Rights Reserved