일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 | 29 |
30 | 31 |
- 형변환
- HTML
- eclipse 설정
- 자바
- docker
- 데이터베이스
- java 오류
- JSP
- elasticsearch
- 엑셀
- spring 오류
- jQuery
- Excel
- db
- vscode
- Java
- 자바 리스트
- 인텔리제이
- tomcat
- CSS
- JavaScript
- 엘라스틱서치
- spring form
- 쿼리
- 도커
- 자바스크립트
- 이클립스 설정
- 이클립스
- Eclipse
- 한글 깨짐
- Today
- Total
개발노트
compareTo 본문
compareTo()
- 2개의 값을비교하여 int형으로 결과를 반환해주는 함수이다.
- 문자열의 비교 / 숫자의 비교 방식이 존재한다.
기준값.compareTo(비교값)
1. 숫자형 비교
기준값 = 비교대상 0 |
기준값 < 비교대상 -1 |
기준값 > 비교대상 1 |
/* Wrapper Class인 경우*/
Integer A = 1;
Integer B = 2;
System.out.println( A.compareTo(B) ); // -1 :작다
System.out.println( A.compareTo(1) ); // 0 :같다
System.out.println( A.compareTo(2) ); // 1 :크다
/* int 대상인 경우*/
int A = 1;
int B = 2;
Integer.compare(A,B);
2. 문자열 비교
1) 비교대상에 문자열이 포함되어있을경우
// 1) 비교대상에 문자열이 포함되어있을 경우
String str = "abcd";
System.out.println( str.compareTo("abcd") ); // 결과: 0 (기준값 == 비교대상)
String str = "abcd";
System.out.println( str.compareTo("ab") ); // 결과: 2
System.out.println( str.compareTo("a") ); // 결과: 3
※ str.compareTo("ab") 값이 2가 나온 이유
= 기준값에 비교대상이 포함되어있을 경우 서로의 문자열 길이의 차이값을 리턴해주기 때문이다.
("abcd"에 "ab"가 포함되어 있으므로 문자열 길이의 차이값인 '2'가 나온다)
"abcd" - "ab" = 2 4 - 2 = 2 |
"abcd" - "a" = 3 4 - 1 = 3 |
String str = "abcd";
System.out.println( str.compareTo("c") ); // 결과: -2
System.out.println( "".compareTo(str) ); // 결과: -4
※ str.compareTo("c") 값이 -2가 나온 이유
= comparTo는 같은 위치의 문자만 비교하기 때문에
맨 앞('a')에서 불일치 하기 때문에 아스키값으로 비교처리를 한다.
('a'의 아스키코드 값은 97, 'c'의 아스키코드 값은 99 이므로 차이인 -2가 리턴된다.)
2) 비교대상과 전혀 다른 문자열인 경우
// 2) 비교대상과 전혀 다른 문자열인 경우
String str = "abcd";
System.out.println( str.compareTo("zefd") ); // -25
System.out.println( str.compareTo("zEFd") ); // -25
System.out.println( str.compareTo("ABCD") ); // 32
https://mine-it-record.tistory.com/133
[JAVA] 자바_compareTo ( 값 [문자열/숫자] 비교 )
- 자바 compareTo - -마지막 수정날짜 : 2021-01-01- 과거 기록한 글이나 보기 힘든 부분도 있고 잘못 작성된 부분이 있어 내용 일부분 수정하였습니다. (잘못된 내용이 있는부분 적어주시면 바로바로
mine-it-record.tistory.com
https://yuja-kong.tistory.com/172
[Java] compareTo 숫자, 문자열 비교
[Java] compareTo 숫자, 문자열 비교 compareTo int compareTo(NumberSubClass referenceName) int compareTo(String anotherString) 두 개의 값을 비교하여 int값으로 반환해주는 함수이다. 문자열의 비교..
yuja-kong.tistory.com
'Programming > JAVA' 카테고리의 다른 글
컬렉션 프레임워크 (Collection Framework) (0) | 2022.05.11 |
---|---|
Wrapper 클래스 / 보조 스트림 (0) | 2022.05.10 |
Comparator - compare / compareTo (0) | 2022.05.08 |
String 클래스 (0) | 2022.05.07 |
Singleton 패턴 (0) | 2022.05.06 |