정리노트

[java] API②

망고고래 2023. 10. 26. 17:34

Chapter10 API

3. java.util.Random

Random 클래스의 메서드

int nextInt(): 무작위 int값 반환

int nextInt(int n): 0부터 n보다 작은 int값 반환

boolean nextBoolean(): 무작위 boolean값 반환

long nextLong(): 무작위 long 값 반환

double nextDouble(): 무작위 double 값 반환

float nextFloat(): 무작위 float값 반환

파라미터값을 지정하면 시드값을 지정할 수 있다. 시드값이 같으면 반환되는 값이 같다.

 
 

4. java.util.Scanner

앞에서도 많이 사용했던 클래스이다. 이번에는 Scanner를 사용할 때 주로 사용하는 코드인 Scanner sc = new Scanner(System.in);에 대해 살펴보도록 한다.
 
 
Scanner sc = new Scanner(System.in);
 
System.in(=클래스명.변수명)
 
    in
  • 참조변수
  • 전역변수
  • 스태틱 변수
    Scanner(): 스캐너 클래스의 생성자 함수. 
  • 스캐너 클래스의 생성자 함수
  • 생성자는 해당 클래스 객체 생성
  • 주소 생성 후 주소 리턴

new

객체 생성 실행 명령어

 

=

대입연산자. 오른쪽의 항목을 왼쪽으로 대입(정수, 실수, 문자, 논리, 주소)

관련 변수가 왼쪽에 있어야 함

 

 

 

 

5. BigDecimal

정확한 소수점 연산에 사용

package apiPackage;
import java.math.BigDecimal;
public class BigDecimal1
{
public static void main(String[] args)
{
double a = 24.3953;
double b = 50.343998;
BigDecimal number = new BigDecimal(String.valueOf(a));
BigDecimal number2 = new BigDecimal(String.valueOf(b));
System.out.println(number.add(number2));
}
}

 

6. Wrapper

what?

기본 자료형을 객체자료형으로 포장하는 클래스

why?

기본 자료형을 객체로 다루기 위함

how?

인스턴스를 생성해서 사용한다.

Integer i = new Integer(100);
Double d = new Double(3.14);

래퍼 클래스→기본 자료형

자료형 이름+Value()

Integer i = new Integer(100);
int a = i.intValue(); //int형으로 변환
double b = i.doubleValue();//double형으로 변환

★문자열→숫자

int a = Integer.parseInt("100");
double b = Double.parseDouble("3.14");

★숫자→문자열

int number = 36;
String s = Integer.toString(number);
System.out.println(s+36); //3636으로 출력

문자열→래퍼 클래스

Integer i = Integer.valueOf("100");
Float f = Float.valueOf("2.65")

오토박싱: 기본 자료형을 자동으로 객체자료형으로 변환(String 사용할 때)

Integer i = 100;
//Integer i = new Integer(100);과 같음

언박싱: 객체자료형을 자동으로 기본 자료형으로 변환

Integer i = new Integer(100);
int a = 3;
a = a + i
//a = a + i.intValue();와 같음

 

7. Timer/TimerTask

1. TimerTask를 상속받는 새로운 클래스 선언

2. TimerTask의 run 추상 메서드 오버라이딩

3. Timer 객체 생성(생성자에 true: 프로그램이 종료될 때 객체 사라짐), 원하는 시간을 파라미터로 설정

 

'정리노트' 카테고리의 다른 글

[java] 코드 읽기 연습  (0) 2023.10.30
[java] API③  (0) 2023.10.27
[java] API  (0) 2023.10.25
[java] 내부 클래스, 예외 처리  (0) 2023.10.24
[java] 상속과 다형성, 추상 클래스와 인터페이스  (0) 2023.10.23