랜덤한 정수를 발생시킬 때
nextInt()
Random random = new Random();
for (int i = 0; i < 6; i++) {
int a = random.nextInt(5);
System.out.println(a);
}
출력결과
2
1
0
4
4
4
배열에 저장된 데이터를 정렬할 때
특정 배열의 데이터를 복사할 때
sort()
int[] scoreList = {77, 55, 0, 99, 98, 0};
Arrays.sort(scoreList);
for (int i : scoreList) {
System.out.println(i);
}
출력결과
0
0
55
77
98
99
copyOf()
sort()
예제를 그대로 복사. . .
System.out.println("==복사==");
int[] copyList = Arrays.copyOf(scoreList, 10); // 10칸 짜리 리스트
for (int j : copyList) {
System.out.println(j);
}
출력결과
scoreList
값, 총 6개를 복사copyList
를 만들었기에 복사하고 남은 빈 칸은 0
값으로 출력==복사==
0
0
55
77
98
99
0
0
0
0
문자열 자르거나 추출
StringTokenizer
이용hasMoreTokens()
cursor
를 한 칸씩 밑으로 이동시키면서 데이터 읽어들임true
false
데이터가 없는 영역 존재
Before First
, Atfer Last
처음 객체 생성 시, 데이터가 없는 영역에 cursor
가 위치
→ hasMoreTokens()
호출되는 순간 한 칸 아래로 이동하여 데이터를 읽어들임
StringTokenizer
객체 생성 시 cursor
가 위치tokens.hasMoreTokens()
로 호출 시 데이터 읽어들이기 시작String stdInfo = "NO=000001&NAME=이예삐&AGE=99&MAJOR=컴퓨터정보공학";
StringTokenizer tokens = new StringTokenizer(stdInfo, "&"); // &를 구분자로 문자열 분리
while(tokens.hasMoreTokens()) {
String token = tokens.nextToken();
String[] elements = token.split("="); // =를 구분자로 문자열 분리
System.out.println(elements[0] + "의 데이터 -> " + elements[1]);
}
출력결과
NO의 데이터 -> 000001
NAME의 데이터 -> 이예삐
AGE의 데이터 -> 99
MAJOR의 데이터 -> 컴퓨터정보공학
new
가능new
사용 불가private
로 막혀있기 때문Calendar.getInstance()
를 사용👉 실제 현업에서는 Data 를 훨씬 많이 사용
new Date()
System.out.println("Date 사용");
Date date = new Date();
System.out.println(date.toString());
출력결과
Date 사용
Tue May 24 14:00:21 KST 2022
Calendar.getInstance()
java.text.SimpleDateFormat
클래스를 조합하여 간결하게 표현 가능System.out.println("Calendar 사용");
Calendar calendar = Calendar.getInstance();
System.out.println(calendar.toString());
System.out.println("");
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy년 M월 d일 E요일 HH시 mm분 ss초");
System.out.println(dateFormat.format(calendar.getTime()));
출력결과
Calendar 사용
java.util.GregorianCalendar[time=1653368421576,areFieldsSet=true,areAllFieldsSet=true,lenient=true,zone=sun.util.calendar.ZoneInfo[id="Asia/Seoul",offset=32400000,dstSavings=0,useDaylight=false,transitions=30,lastRule=null],firstDayOfWeek=1,minimalDaysInFirstWeek=1,ERA=1,YEAR=2022,MONTH=4,WEEK_OF_YEAR=22,WEEK_OF_MONTH=4,DAY_OF_MONTH=24,DAY_OF_YEAR=144,DAY_OF_WEEK=3,DAY_OF_WEEK_IN_MONTH=4,AM_PM=1,HOUR=2,HOUR_OF_DAY=14,MINUTE=0,SECOND=21,MILLISECOND=576,ZONE_OFFSET=32400000,DST_OFFSET=0]
2022년 5월 24일 화요일 14시 05분 47초