java.lang package에 있으므로 별도로 import 할 필요 없음
전부 static 메소드이므로 객체를 생성하지 않고 바로 사용할 수 있음
기능 | 메소드 | 리턴 자료형 |
---|---|---|
절댓값 | abs(int/double, int/double) | int/double |
최댓값 | max(int/double, int/double) | int/double |
최솟값 | min(int/double, int/double) | int/double |
올림 | ceil(double) | double |
내림 | floor(double) | double |
반올림 | round(double) | long |
제곱근 | sqrt(double) | double |
난수 | random() | 0.0 <= double < 1.0 |
int i = (int)(Math.random() * 10) + 1; // 1 ~ 10
char c = (char)((Math.random() * 26) + 65); // 대문자
java.util package에 있는 난수를 다루는 클래스
기능 | 메소드 | 리턴 |
---|---|---|
무작위 int | nextInt() | int범위 |
설정 범위 내 무작위 int | nextInt(int n) | 0 <= int < n |
무작위 double | nextDouble() | Double범위 |
무작위 boolean | nextBoolean() | true/false |
import java.util.Random;
...
// 객체 생성
Random rand = new Random();
int i = rand.nextInt(10); // 0 ~ 9
java.io package에 있는 파일 처리 클래스
File : 메모리가 아닌 하드디스크나 보조기억장치에 있는 데이터의 모음
list()
, listFiles()
로 배열에 저장isfile()
, isDirectory()
사용)// 디렉토리 조사
File file = new File("c:\\");
File filelist[] = file.listFiles();
for (int i = 0; i < filelist.length; i++) {
if (filelist[i].isFile()) {
System.out.println("[file]" + filelist[i].getName());
} else if (filelist2[i].isDirectory()) {
System.out.println("[folder]" + filelist[i].getName());
} else {
System.out.println("[?]" + filelist[i].getName());
}
}
createNewFile()
→ IOException 처리 필요delete()
// 파일 생성
File f = new File("c:\\new\\newfile.txt");
try {
if (f.createNewFile()) {
System.out.println("Success");
} else {
System.out.println("Fail to creat a new file"); // 있으면 다시 안 만듬
}
} catch (IOException e) {
e.printStackTrace();
}
// 파일 삭제
f.delete();
if (f.exists()) {
System.out.println("파일 존재");
} else {
System.out.println("파일 없음");
}
파일 쓰기 : FileWriter
(+ PrintWriter
, BufferedWriter
)
파일 읽기 : FileReader
(+ BufferedReader
)
// 파일 쓰기
File f = new File("c:\\new\\newfile.txt");
try {
/* 기본
FileWriter fwriter = new FileWriter(f); // 파일 자동 생성
fwriter.write("Hello\n");
fwriter.close(); // 꼭 닫아줘야됨
// 추가쓰기
FileWriter fwriter = new FileWriter(f, true);
fwriter.write("Heeeellllooooo");
fwriter.close();
*/
PrintWriter pw = new PrintWriter(new BufferedWriter(new FileWriter(f)));
pw.println("hello");
pw.close();
} catch (IOException e) {
e.printStackTrace();
}
// 파일 읽기
try {
/* 한글자씩 읽기
FileReader fr = new FileReader(f);
int ch = fr.read();
while (ch != -1) {
System.out.println((char)ch);
ch = fr.read();
}
*/
// 문장으로 읽기
BufferedReader br = new BufferedReader(new FileReader(f));
String str = "";
while ((str = br.readLine()) != null) {
System.out.println(str);
}
br.close();
} catch (IOException e) {
e.printStackTrace();
}
java.util package에 있는 날짜와 시간을 다루는 클래스
Calendar cal = Calendar.getInstance();
// getter
// 오늘 날짜 취득
int year = cal.get(Calendar.YEAR);
int month = cal.get(Calendar.MONTH) + 1; // 0 ~ 11
int day = cal.get(Calendar.DATE);
int weekday = cal.get(Calendar.DAY_OF_WEEK); // 일(1) ~ 토(7)
// 시간 // 오후 == 1
String ampm = cal.get(Calendar.AM_PM) == 0 ? "오전":"오후";
int hour = cal.get(Calendar.HOUR_OF_DAY); // 0 ~ 23
int minute = cal.get(Calendar.MINUTE);
// 달의 마지막날
int lastday = cal.getActualMaximum(Calendar.DAY_OF_MONTH);
// 1970년 1월 1일 00:00:00.000로부터 지난 시간
long offsetSecond = cal.getTimeInMillis() / 1000;
// setter
cal.set(Calendar.MONTH, 12 - 1); // 12월