Day21 :) java.lang패키지 - System, Wrapper, Math
System 클래스
- 표준에러 출력장치, 입력자잋, 출력장치과 연결된 스트림
err.print("String")
import java.io.IOException;
public static void main(String[]args){
System.err.print("문자열");
}
- 에러메세지 출력
System.err.println("표준 에러출력장치");
System.err.println("표준 에러출력장치");
System.out.println("표준 출력장치");
System.err.println("표준 에러출력장치");
System.err.println("표준 에러출력장치");
- 해당 코드를 실행하면 다음과 같이 순서대로 출력되지 않음
- 에러코드(err)를 처리하는 통로 따로, 정상메세지 처리하는 통로(out)의 처리순서가 제각각이기때문
CurrentTimeMillis()
import java.util.Date;
public static void main(String[]args){
System.currentTimeMillis();
}
- 유닉스타임 제공
- 유닉스 타임이란, 1970년 1월 1일을 기준으로 1/1000단위(1초에 1000번)로 시간을 세는 단위
- 반환타입은 long
arraycopy(Object[] src, int srcPos, Object[] dest, int destPos, int length)
import java.util.Arrays;
public static void main(String[]args){
System.arraycopy(원본배열, 복사시작위치, 대상배열, 원본배열이 저장될 위치, 대상배열에 저장할 원본배열의 데이터길이)
}
- 배열을 복사
1. 원본배열
int[] s = {10,20,30,40,50,};
2. 복사할 배열
int[] d = new int[10];
System.arraycopy(s, 0, de, 0, s.length);
// 원본배열(s)의 0번부터 대상배열(d)의 0번째 칸에 복사. 복사할 총 데이터 갯수는 원본배열의 모든 데이터
Wrapper 클래스
- 기본자료형 값을 객체로 만들 수 있음
class Person1{
Integer age;
}
class Person2{
int age;
}
Person1 p1 = new Person1(); // age = null;
Person2 p2 = new Person2(); // age = 0;
오토박싱, 오토언박싱
- 오토박싱: 변수타입이 Wrapper이고 저장할 값의 타입이 기본자료형일때
자동으로 Wrapper객체에 기본자료형을 대입하는 것
Integer a1 = 10;
// 형변환 없이 간단하게 객체에 값 저장 가능
// 실제 실행되는 내용 Integer c1 = new Integer(10);
- 오토언박싱: Wrapper클래스타입 객체의 값을 기본자료형 타입의 변수에 대입하면
자동으로 Wrapper객체가 갖고 있는 기본자료형의 값이 대입됨
Integer c1 = 1000; // 오토박싱(Integer c1 = new Integer(1000);
int c2 = c1; // 자동으로 c1객체 내의 정수값을 꺼내 c2에 저장
- 즉, Wrapper로 들어가는 것은 오토박싱, 기본자료형으로 들어가는것은 오토언박싱
- 연산도 가능
Integer d1 = 20;
Integer d2 = 30;
int d3 = 40;
int sum = d1 + d2 + d3 // 90출력
// d1, d2가 언박싱 되어 기본자료형인 d3과의 연산 실행
진수변환
- 10진수를 기타 진수로 변환
Integer.toBinary(값); // 2진수
Integer.toOctalString(값); // 8진수
Integer.toHexString(값); // 16진수
- 기타진수를 10진법으로 변환
Integer.parseint("값",2); // 2진법인 값을 10진법으로 변환
Integer.parseint("값",8); // 8진법인 값을 10진법으로 변환
Integer.parseint("값",16); // 16진법인 값을 10진법으로 변환
문자열↔기본자료형
1. 기본자료형으로 변환
기본자료형.parse자료형("문자열")
2. 객체로 변환
기본자료형.valueOf("문자열")
- 문자열을 기본자료형으로 변환
- int로 변환시, 숫자가 아닌 어떠한 값도 들어가있으면 안됨(언더바, 소수점, 공백 등)
- double로 변환 시, 소수점값 허용(123.->123.0 / 123->123.0으로 변환)
1. String.valueOf(값)
2. +""빈문자열을 더함
- 기본자료형을 문자열로변환
Math 클래스
- 수학계산과 관련된 기능 제공
- 모든 메서드가 정적메서드
random()
Math.random();
- 0.0<=1.0 값을 랜덤으로 반환
(int)(Math.random()*10)+1 // 1~10사이의 정수 랜덤으로 얻음
(int)(Math.random()*3)+1 // 1~3사이의 정수 랜덤으로 얻음
ceil()
Math.ceil(double값)
- 올림값 반환
- 보통 int로 형변환하여 사용함
double a1 = Math.ceil(3.3) // 4.0
floor()
Math.floor(double값)
- 내림값 반환
- 역시 보편적으로 int로 형변환하여 사용
round()
Math.round(double값)
- 소수점 첫째자리에서 반올림한 값 반환
- 중간값일 경우 큰 값 반환
double a1 = Math.round(123.3); // 123
double a2 = Math.round(123.5); // 124
rint()
Math.rint(double값)
- 반올림값 반환
- 중간값일 경우 짝수값 반환
double a1 = Math.rint(1.2); // 1
double a2 = Math.rint(4.5); // 4
Author And Source
이 문제에 관하여(Day21 :) java.lang패키지 - System, Wrapper, Math), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@yoonee1126/Day21-java.lang패키지저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)