프로그래밍/java

[자바JAVA] API (절대값, 최소값, 최대값, 원주율, 난수, nextInt 활용)

pupu91 2022. 7. 4. 13:45
반응형

API

(Application Programming Interface)


API는 응용프로그램에서 사용할 수 있도록 운영체제나 프로그래밍 언어가 제공하는 기능을 제어할 수 있도록 만든 인터페이스를 뜻한다. 쉽게 말해 우리가 구현할 수 없거나 구현하기 번거로운 기능들을 JDK를 설치하면 사용할 수 있도록 제공해놓은 소스코드들을 의미한다.


 

 

  • java.lang.Math

Math 클래스는 수학에서 자주 사용하는 상수들과 메소드들을 미리 구현해놓은 클래스이다. java.lang.Math에서 제공하는 것을 활용하여 수학적인 연산을 쉽게 할 수 있다.

 

● 절대값 
System.out.println("-7의 절대값 : " + (java.lang.Math.abs(-7)));
● 최대값, 최소값 
System.out.println("10과 20 중 더 작은 것은 : " + Math.min(10, 20));
System.out.println("10과 20 중 더 큰 것은 : " + Math.max(10, 20));
● 원주율
System.out.println("원주율 : " + Math.PI);
● 난수 발생
System.out.println("난수 발생 : " + Math.random());
● 실행 결과
-7의 절대값 : 7
-7의 절대값 : 7
10과 20 중 더 작은 것은 : 10
10과 20 중 더 큰 것은 : 20
원주율 : 3.141592653589793
난수 발생 : 0.6301467154471946




난수의 활용

 


 

  • Math.random()은 0~0.9999..까지의 double형을 반환
  • 강제 형변환으로 소수점 이하 생략 가능
  • Math.random()을 이용해 발생한 난수는 0부터 1전까지의 실수 범위의 난수 값을 반환한다. 필요에 따라 정수 형태의 값을 원하는 범위만큼 발생시켜야 하는 경우들이 존재하는데 필요한 범위까지의 난수를 발생시켜보자.

 


원하는 범위의 난수를 구하는 공식


(int) (Math.random() * 구하려는 난수의 갯수) + 구하려는 난수의 최소값

 

● 0 ~ 9까지의 난수 발생 
int random1 = (int)(Math.random() * 10);
System.out.println("0부터 9 사이의 난수 : " + random1);
	
● 1 ~ 10까지의 난수 발생 
int random2 = (int)(Math.random() * 10) + 1;
System.out.println("1부터 10 사이의 난수 : " + random2);
		
● 10 ~ 15까지의 난수 발생 
int random3 = (int)(Math.random() * 6) + 10;
System.out.println("10부터 15 사이의 난수 : " + random3);
		
● byte 타입이 가지는 값의 범위만큼 난수 발생 (-128 ~ 127) 
int random4 = (int) (Math.random() * 256) - 128;
System.out.println("-128부터 127까지의 난수 : " + random4);

● 실행결과
0부터 9 사이의 난수 : 8
1부터 10 사이의 난수 : 9
10부터 15 사이의 난수 : 13
-128부터 127까지의 난수 : 87





java.util.Random 클래스의

nextInt() 메소드를 이용한 난수 발생

 


반응형
  • nextInt(int bound) : 0부터 매개변수로 전달받은 정수 범위까지의 난수를 발생시켜 정수 형태로 변환

 


nextInt로 원하는 범위의 난수를 구하는 공식


random.nexInt(구하려는 난수의 갯수) + 구하려는 난수의 최소값

 

Random random = new Random(); 임포트 구문 필요

● 0부터 9까지 난수 발생 
nt random1 = random.nextInt(10);
System.out.println("0부터 9까지의 난수 : " + random1);
		
● 1부터 10까지 난수 발생 
int random2 = random.nextInt(10) + 1;
System.out.println("1부터 10까지의 난수 : " + random2);
		
● 20부터 45까지의 난수 발생
int random3 = random.nextInt(26) + 20;
System.out.println("20부터 45까지의 난수 : " + random3);

● 실행결과
0부터 9까지의 난수 : 9
1부터 10까지의 난수 : 7
20부터 45까지의 난수 : 37

 

반응형