Java_패키지

ChoRong0824·2023년 5월 15일
0

Java

목록 보기
19/40
post-thumbnail

자바 패키지 설명 및 패키지 사용하여 문제푸는 법을
간단하게 학습 및 포스팅하였습니다.

Java 패키지

Java에서 패키지(package)란 관련된 클래스들을 그룹화하여 관리하기 위한 방법입니다.
패키지는 폴더 구조와 비슷한 형태를 가지며, 클래스 파일들을 서로 다른 패키지에 넣어서 관리하게 됩니다.

패키지의 두 가지 이점

첫 번째로,
패키지를 사용하여 클래스 이름 충돌을 방지할 수 있습니다.
즉, 서로 다른 패키지에 있는 동일한 클래스 이름이 충돌하는 경우를 방지할 수 있습니다.
두 번째 이점,
클래스들을 논리적으로 그룹화하여 개발을 용이하게 합니다.
즉, 관련된 클래스들을 한 곳에 모아서 개발하고 유지보수하기 용이합니다.

패키지는 다음과 같은 형태로 작성됩니다.

java
package com.example.mypackage;

위의 예시에서 패키지 이름은 "com.example.mypackage" 입니다.
패키지 이름은 일반적으로 역순 도메인명을 포함하며, Java에서 제공하는 패키지와 충돌하지 않도록 한 개발자가 패키지를 지을 때 보통 사용하는 패턴입니다.
패키지 선언은 소스 파일의 첫 줄에 위치해야 하며, 패키지 선언을 생략할 수도 있습니다.
이 경우에는 이 소스 파일이 속한 패키지가 default 패키지가 됩니다.

랜덤 함수 문제

1부터 10 사이의 숫자가 무작위로 10개 출력되는 코드를 작성

예시) [ 2, 3, 9, 8, 0, 8, 5, 7, 2, 1 ]
// 이때, 0은 출력되면 안된다.

결과

9 10 9 3 2 5 10 3 4 5

code



public class MathRandom {
    public static void main(String[] args) {

        // [1] : 반복문 --> 랜덤 숫자 생성
        // 랜덤 숫자 생성중 0을 제외하려면 ? --> ???
        for (int i = 0; i < 10; i++) {
            System.out.print((int)(Math.random()*10+1)+" "); // 이 함수가 반환하는 타입이 double 로 실수임 --> 따라서, 정수형으로 받게되면 ERR. --> 형변환 해줘야함
            // --> 이렇게 해주면 0이 출력될 수 있음.
            // 랜덤 숫자 생성중 0을 제외하려면 ? --> 1.  결과로 나오는 숫자에 1을 더해준다. (어차피 1을 더해줘도 랜덤해주는 숫자이기 때문에 무상관)
            // 또는, 2. 배열을 지정해줘서 if문 돌리기 (내생각)
        }
    }
}

여기서 문제 ,


public class MathRandom {
    public static void main(String[] args) {

        // [1] : 반복문 --> 랜덤 숫자 생성
        // 랜덤 숫자 생성중 0을 제외하려면 ? --> ???
        for (int i = 0; i < 10; i++) {
            System.out.println((Integer)(Math.random()*10)); // 이 함수가 반환하는 타입이 double 로 실수임 --> 따라서, 정수형으로 받게되면 ERR. --> 형변환 해줘야함

        }
    }
}

--> 결과값은 ?

이유

Math.random() 메소드는 double 값을 반환합니다.
double 값을 정수 값으로 형변환 할 때 Integer 클래스를 사용하면 안되는 이유는 Integer 클래스의 형변환 메소드는 double 값을 인자로 받을 수 없기 때문입니다.
따라서, int 타입으로 바로 형변환하거나, double 값을 long으로 변환한 뒤 int로 형변환하는 방법을 사용해야 합니다.

profile
정진, "어제보다 더 나은 오늘이 되자"

0개의 댓글