<StringBuffer 클래스>
- 가변 크기의 문자열 저장 클래스
- java.lang.String.Buffer
- String 클래스와 달리 문자열 변경 가능
- StringBuffer 객체의 크기는 스트링 길이에 따라 가변적
StringBuffer sb=new StringBuffer("java");
StringBuffer() | 초기 버퍼의 크기가 16인 스트링 버퍼 객체 생성 |
StringBuffer(charSequence seq) | seq가 지정하는 일련의 문자들을 포함하는 스트링 버퍼 생성 |
StringBuffer(int capacity) | 지정된 초기 크기를 갖는 스트링버퍼 객체 생성 |
StringBuffer(String str) | 지정된 스트링으로 초기화된 스트링 버퍼 객체 생성 |
StringBuffer는 언제 사용하는게 좋을까?
간단한 문자열 처리는 String클래스
문자열의 길이가 길거나 문자열이 수시로 변하는 경우 StringBuffer 쓰는 것이 적합
<StringTokenizer클래스>
-java.util.StringTokenizer
- 하나의 문자열을 여러 문자열로 분리(문자열을 분리할 때 사용되는 기준 문자:구분문자)
String query="name=kitae&addr=seoul&age=21";
StringTokenizer st=new StringTokenizer(query,"&");
-->여기서 &가 구분문자
- 토큰(구분 문자로 분리된 문자열)
- String 클래스의 split()메소드를 이용하여 동일한 구현 가능
<StringTokenizer 생성자>
StringTokenizer(String str) | |
StringTokenizer(String str,String delim) | |
StringTokenizer(String str,String delim,boolean returnDelims) |
<StrintTokenizer 주요 메소드>
int countTokens() | |
boolean hasMoreTokens() | |
String nextToken() |
<Math 클래스>
- 산술 연산 메소드 제공,java.lang.Math
- 모든 메소드는 static 타입: 클래스 이름으로 바로 호출\
<난수 발생>
static double random()
- 0.0 이상 1.0 미만의 임의의 double 값을 반환
-0과 100사이의 난수 10개를 발생시키는 샘플 코드
for(int i=0;i<10;i++){
int n=(int)(Math.random()*100+1);
System.out.println(n);
}
Math.random()*100은 0.0~99.99 사이의 실수
Math.random()*100+1 은 1.0~100.99 사이의 실수
(int)(Math.random()*100+1) 소수점 이하를 제거하여 1~100 사이의 정수값
- java.util.Random 클래스 : 다양한 형태로 난수 발생 가능
<Calendar 클래스>
- java.util 패키지
- 시간과 날짜 정보 저장 관리
- 년,월,일,요일,시간,분,초,밀리초, 오전,오후 등
Calendar 객체 생성
Calendar now=Calendar.getInstance();
- now 객체는 현재 날짜와 시간 정보를 가지고 생성
- Calendar 객체는 추상 클래스이므로 new Calendar() 하지 않음
날짜와 시간 알아내기
int year=now.get(Calendar.YEAR);
int month=now.get(Calendar.MONTH)+1; //MONTH는 0부터 11까지 이기 때문에 1을 더해줘야함
날짜와 시간 설정
now.clear();
now.set(2016,11,25);
now.set(Calendar.HOUR_OF_DAY,20); //저녁 8시로 설정
now.set(Calendar.MINUTE,30); //30분으로 설정
'Java > 기초' 카테고리의 다른 글
[java 기초] 예외처리 (0) | 2021.07.06 |
---|---|
[java 기초] 입출력 스트림과 파일 입출력 (0) | 2021.07.05 |
[java 기초] 제네릭과 컬렉션 (0) | 2021.07.04 |
[java기초] 제네릭 프로그래밍 (0) | 2021.07.02 |
[java기초] 모듈과 기본패키지 (0) | 2021.07.02 |
댓글