반응형
✔️ java.util 패키지
- 대부분 Collection Framework 들이 있다
📌 Objects 클래스
- Object 클래스의 보조 클래스로 모든 메서드가 static이다
- Objects 클래스의 대부분 메서드는 내부적으로 null 체크를 한다
isNull(), nonNull(), requireNonNull()
Object obj = null;
System.out.println(Objects.isNull(obj)); //true
System.out.println(Objects.nonNull(obj)); //false
try {
Objects.requireNonNull(obj); //NULL
} catch (NullPointerException e) {
System.out.println("NULL");
}
compare()
class compareTest {
public static void main(String[] args) {
Integer itg = new Integer("100");
Integer itg2 = new Integer("100");
Integer itg3 = new Integer("200");
int i = Objects.compare(itg, itg2, new intComparator());
int i2 = Objects.compare(itg, itg3, new intComparator());
int i3 = Objects.compare(itg3, itg, new intComparator());
System.out.println(i); //0
System.out.println(i2); //-1
System.out.println(i3); //1
}
}
class intComparator implements Comparator<Integer> {
@Override
public int compare(Integer o1, Integer o2) {
return o1.compareTo(o2);
}
}
equals(), deepEquals()
Integer itg = new Integer("100");
Integer itg2 = new Integer("100");
Integer itg3 = new Integer("200");
String[][] str2D = new String[][] {{"aaa", "bbb"},{"AAA", "BBB"}};
String[][] str2D2 = new String[][] {{"aaa", "bbb"},{"AAA", "BBB"}};
System.out.println(Objects.equals(itg, itg2)); //true
System.out.println(Objects.equals(itg, itg3)); //false
System.out.println(Objects.equals(str2D, str2D2)); //false
System.out.println(Objects.deepEquals(str2D, str2D2)); //true
📌 Random 클래스
📌 regex 패키지 (정규식)
- 텍스트 데이터 중 원하는 조건(패턴)과 일치하는 문자열을 찾아내기 위해 사용한다
📌 Scanner 클래스
- 데이터 형식이 맞지 않으면 InputMismatchException이 발생한다
Scanner s = new Scanner(System.in);
String str = s.nextLine();
boolean bool = s.nextBoolean();
byte b = s.nextByte();
short sh = s.nextShort();
int i = s.nextInt();
long l = s.nextLong();
double d = s.nextDouble();
float f = s.nextFloat();
📌 StringTokenizer 클래스
- split()과 달리 구분자를 하나 밖에 사용하지 못하지만 "" 안에 전체가 구분자이다
- split()은 빈 문자열을 토큰으로 인식하지만 StringTokenizer는 빈 문자열은 토큰으로 인식하지 않는다
String str = "100,200";
StringTokenizer st = new StringTokenizer(str, ",", true);
System.out.println(st.countTokens()); //3
System.out.println(st.hasMoreTokens()); //true
while(st.hasMoreTokens()) {
System.out.println(st.nextToken());
}
System.out.println(st.hasMoreTokens()); //false
//100
//,
//200
📄 참고
자바의 정석 3rd Edition
반응형
'📚 Study > JAVA' 카테고리의 다른 글
[JAVA] 컬렉션 프레임워크(Collections Framework) (0) | 2022.05.06 |
---|---|
[JAVA] 날짜와 시간 & 형식화 (0) | 2022.05.05 |
[JAVA] Java API (java.lang 패키지) (0) | 2022.05.03 |
[JAVA] 예외처리(try-catch문) (0) | 2022.05.02 |
[JAVA] 객체지향개념2 (0) | 2022.05.01 |