Programming/Java

JAVA 20(2) Math 클래스

사랑우주인 2021. 8. 12. 19:17

Math 클래스는 final 클래스 이기 때문에 상속이 불가능하다. Math 클래스는 생성자는 private 접근 제한자로 선언되어 있어 인스턴스를 생성할 수 없고, 맴버 변수와 메소드는 모두 static으로 선언되어 있다.

 

난수의 생성

 

import java.util.Random;

public class Test {
    public static void main(String[] args) {
        Random rnd = new Random();
        for (int i = 0; i < 5; i++) {
            System.out.println(rnd.nextInt(100));
        }

    }
}
//output:
//71
//60
//10
//64
//53

 

 

문자열의 토큰 구분

구분자로 나눠진 덩어리= 토큰

 

 

import java.util.Random;
import java.util.StringTokenizer;

public class Test {
    public static void main(String[] args) {
        //Random 인스턴스 생성 
        Random rnd = new Random();
        //난수 담을 버퍼 생성 
        StringBuilder sb= new StringBuilder();
        for (int i = 0; i < 10; i++) {
            sb.append(rnd.nextInt(100));
            if(i<9)
                sb.append(", ");

        }
        //버퍼 안의 난수들 문자열로 변환
        String rnd_nums =sb.toString();

        System.out.println(rnd_nums);
        //StringTokenizer 인스턴스 생성
        //구분자 지정 ", "
        // '.',  ' '이 구분자이다. 공백도 구분자에 포함
        StringTokenizer st= new StringTokenizer(rnd_nums, ", ");
        while(st.hasMoreTokens())
            System.out.print(st.nextToken()+ ' ');
        System.out.println();
    }
}
//output
//31, 26, 49, 62, 8, 50, 31, 86, 8, 34
//31 26 49 62 8 50 31 86 8 34