Math.random()을 이용한 난수 생성

Java에서 난수를 생성할 때 가장 많이 사용되는 방법 중 하나가 Math.random() 메서드이다.
Math.random()은 java.lang.Math 클래스에 속한 정적 메서드이고 기본적으로 0.0 (포함)에서 1.0 (미포함) 사이의
난수를 생성한다

배열의 인덱스값을 랜덤으로 생성해서 배열을 셔플하거나,
1 ~ 45 범위의 로또 번호 생성, x y 좌표 랜덤 등 다양한 곳에 사용가능하다.

실수이기 때문에 정수를 원한다면 (int)로 캐스팅하여 정수로 변환한다.

시작수를 n, 종료를 m 이라고 할 때(이때 n,m은 양의 정수)

기본 활용 형식

(int)(Math.random() * m) + n

범위 : 1 ~ 45

(int)(Math.random() * 45) + 1

범위 : 0 ~ 5

(int)(Math.random() * 5)

시작수를 n, 종료를 m 이라고 할 때(이때 n은 음의 정수)

기본 활용 형식

(int)(Math.random()∗(m−n+1))+n

범위 : -10 ~ 10

(int)(Math.random()∗(10-(-10)+1)) - 10

범위 : - 2000 ~ 4000

(int)(Math.random()∗(4000−(-2000)+1)) - 2000

※ n, m의 절대값을 더한 후 1 더해주면 종료값이라 생각하면 편하다 => 6001

예제

// 0.0 이상 1.0 미만의 난수 생성
double ran1 = Math.random(); // 0.0 <= num < 1.0
System.out.println("0.0 이상 1.0 미만의 난수: " + ran1);
// 0부터 9까지의 정수 난수 생성
// (Math.random() * 10) 의 결과는 0.0 (포함)에서 10.0 (미포함) 사이의 실수
// 정수로 변환하기 위해 (int)로 캐스팅 
// 0부터 9까지의 정수가 생성
int ran2 = (int)(Math.random() * 10); // 0 <= num <= 9
System.out.println("0부터 9까지의 정수 난수: " + ran2);
// 1부터 10까지의 정수 난수 생성
// 1을 더함으로써 난수의 범위를 1에서 10으로 변경
// 0 + 1 <= num <= 9 + 1
// 1 <= num <= 10

int ran3 = (int)(Math.random() * 10) + 1;
System.out.println("1부터 10까지의 정수 난수: " + ran3);
// -10부터 10까지의 정수 난수 생성
// (Math.random() * 21)의 결과는 0.0 (포함)에서 21.0 (미포함) 사이의 실수입니다.
// 여기에 -10을 더해 난수의 범위를 -10에서 10
// -10부터 10까지의 정수가 생성
int ran4 = (int)(Math.random() * 21) - 10; // -10 <= num <= 0
System.out.println("-10부터 0까지의 정수 난수: " + ran4);
반응형

'JAVA' 카테고리의 다른 글

[JAVA][09] Scanner 클래스  (0) 2024.11.17
[JAVA][07] 형변환(Type Casting)  (0) 2024.10.22
[JAVA][06] 변수 기본 타입(Primitive Type)  (0) 2024.10.12
[JAVA][05] 변수값 바꾸기1  (0) 2024.10.09
[JAVA][04] 변수(Variable)란?  (1) 2024.10.03

Scanner 클래스

java.util 패키지에서 제공하는 Scanner 클래스를 이용하여 화면에서 입력받을 수 있다.

자바를 공부하면서 프로그램 입력처리할 때 가장 많이 사용한다.

1. import

아래와 같이 import 선언

import java.util.Scanner;

2. 객체 생성

// 키보드 입력
Scanner scanner = new Scanner(System.in);

// 파일 입력
Scanner scanner = new Scanner(new File("파일경로"));

// 문자열 입력
Scanner scanner = new Scanner("입력 문자열");

3. 주요 메소드

next()

공백을 기준으로 하나의 문자열을 읽음

공백을 기준으로 한 번에 입력 가능하다.


import java.util.Scanner;

public class J101_Scanner {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.println("데이터를 입력 : ");

        String a = sc.next();
        String b = sc.next();
        String c = sc.next();

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        sc.close();

    }

}

실행결과

데이터를 입력 > 
a b c
a
b
c

nextLine()

한 줄을 읽음(공백도 포함)

import java.util.Scanner;

public class J101_Scanner {

    public static void main(String[] args) {

        Scanner sc = new Scanner(System.in);

        System.out.println("데이터를 입력 > ");
        String a = sc.nextLine();
        System.out.println("데이터를 입력 > ");
        String b = sc.nextLine();
        System.out.println("데이터를 입력 > ");
        String c = sc.nextLine();

        System.out.println(a);
        System.out.println(b);
        System.out.println(c);

        sc.close();

    }

}

실행결과

데이터를 입력 > 
a b c
데이터를 입력 > 
x y z
데이터를 입력 > 
1 2 3
a b c
x y z
1 2 3

자주 사용하는 타입별 메소드

필요한 입력값에 맞춰서 아래의 메소드를 사용

  • nextByte()
  • nextInt()
  • nextFloat()
  • nextDouble()

hasNext()

입력에 데이터가 남아 있는지 확인

hasNextInt()

다음 입력값이 정수인지 확인


import java.util.Scanner;

public class J101_Scanner_has {

    public static void main(String[] args) {

        String data = "1 q 2 w 3 e 4 r";
        Scanner sc = new Scanner(data);

        while (sc.hasNext()) {

            if (sc.hasNextInt()) {

                System.out.println("숫자: " + sc.nextInt());

            } else {

                System.out.println("문자열: " + sc.next());
            }

        }

        sc.close(); 
    }

}

숫자: 1
문자열: q
숫자: 2
문자열: w
숫자: 3
문자열: e
숫자: 4
문자열: r

형변환 필요할 때

next와, nextLine 메소드는 문자이기 때문에 숫자를 입력 받으면 형변환이 필요하다
nextInt를 사용하지 않고 정수 값이 필요할 때는 형변환을 한다.


// string -> Integer
String a = sc.next();
System.out.println(Integer.parseInt(a));

// Integer -> String
int b = sc.nextInt();
System.out.println(String.valueOf(b));
변환 방향 사용 방법 메서드/기법
문자 → 정수 Character.getNumericValue(), Integer.parseInt() 단일 문자 또는 문자열 처리
정수 → 문자 캐스팅 (char), Character.forDigit() ASCII 활용 또는 변환 함수
문자열 → 정수 Integer.parseInt() 문자열 전체 처리
정수 → 문자열 String.valueOf(), Integer.toString() 문자열 변환 함수
반응형

형변환(Type Casting)

형변환이란 한 데이터 타입의 값을 다른 데이터 타입으로 변환하는 과정이다.

목차

  1. 기본타입 허용 범위 크기
  2. 자동형변환(묵시적형변환)
  3. 자동형변환 예외
  4. 자동형변환 예시
  5. 강제형변환(명시적형변환)
  6. 강제형변환 예시

1. 기본타입 허용 범위 크기

  • byte < short < int < long < float < double

2. 자동형변환(묵시적형변환)

작은 데이터 타입에서 큰 데이터 타입으로의 변환이 발생할 때
Java가 자동으로 처리하는 것을 자동형변환이라고하고 데이터 손실이 없다.

큰 허용 범위타입 = 작은 허용 범위타입
byte b = 10
int num = b;

예시) byte -> int

  • byte가 더해지는 과정에서 int로 자동형변환

byte b1 = 10;
byte b2 = 10;
int result = b1 + b2;
System.out.println(result); // 20

예시) int -> long

  • int가 더해지는 과정에서 long으로 자동형변환
    int i1 = 10;
    int i2 = 10;
    long result = i1 + i2;
    System.out.println(result); // 20

예시) long -> float, double


long l1 = 5000000000L;
float f1 = l1;
double d1 = l1;

System.out.println(f1); // 5.0E9
System.out.println(d1); // 5.0E9

예시) float -> double


float f1 = 1.5F;
double d1 = 1.52;
double doubleResult1 = f1 + d1;
System.out.println(doubleResult1); // 3.02

3. 자동형변환 예외(byte->char)

  • byte에서 char로 자동형변환을 시도하면 각각 허용범위가 다르기 때문에 Type mismatch 에러가 나온다.

  • byte : -128 ~ 127 / char : 0 ~ 65533


byte b1 = 10;
byte b2 = 10;
char result = b1 + b2; 
// Type mismatch: cannot convert from int to char

4. 자동형변환 예시


char charValue = '가';
int intValue = charValue;
System.out.println(intValue); // 유니코드로 출력 44032


int intValue1 = 11;
long longValue1 = intValue1;
System.out.println(longValue1); // 11


long longValue2 = 100;
float floatValue2 = longValue2;
System.out.println(floatValue2); // 100.0

float floatValue3 = 100.5F;
double doubleValue3 = floatValue3;
System.out.println(doubleValue3); // 100.5


float f2 = 2.2f;
float f3 = 2.2f;
double doubleResult2 = f2 + f3;

System.out.println(doubleResult2); // 4.400000095367432

5. 강제형변환(명시적 형변환)

큰 데이터 타입에서 작은 데이터 타입으로 변환할 때는 명시적으로 형변환을 해야한다.
이 경우 데이터 손실이 발생할 수 있다.

  • 작은 허용범위 타입 = (작은 허용범위 타입) 큰허용범위타입

5-1. int타입은 byte타입보다 더 큰 허용범위를 가지고 있어 명시적형변환이 필요하다.


int intValue = 10;
byte byteValue = (byte) intValue;
System.out.println(byteValue); // 10

5-2. 정수값으로 char타입에서 문자를 출력하기 위해 변환한다.


int intValue1 = 65;
char charValue1 = (char) intValue1;
System.out.println(charValue1);

5-3. 실수(float, double)은 정수타입(byte, short, int, long)으로 자동형변환 되지 않는다.

소수점 부분은 버려지고 정수부분만 저장된다.


double doubleValue2 = 3.14;
int intValue2 = (int) doubleValue2;
System.out.println(intValue2);

6. 강제형변환 예시

int intValue = 44032;
char charValue = (char) intValue;
System.out.println(charValue); // 가


long longValue = 500;
intValue = (int) longValue;
System.out.println(intValue); // 500


double doubleValue = 3.14;
intValue = (int) doubleValue;
System.out.println(intValue); // 3
반응형

#변수의 타입

자바 변수의 타입에는 기본형(Primitive Type), 참조형(Reference Type)이 있다.

기본형은 정수타입, 실수타입, 논리타입으로 분류된다.

 

 

기본형에는 총 8개의 타입이 있다.

- 정수타입 : byte, char, short, int, long

- 실수타입 : float, double

- 논리타입 : boolean

 

참조형에는 총 4개가 있다.

- 배열(Array)

- 열거형(Enum)

- 클래스(Class)

- 인터페이스(Interface)

 

 

 

정수(Integer)란?

정수란 소수나 분수가 없는 수의 집합으로, 양의 정수(자연수), 음의 정수, 0이 있다.

정수는 수학에서 가장 기본적인 수의 개념 중 하나로, 우리가 일상에서 숫자를 셀 때 사용하는 양의 정수(예: 1, 2, 3...)와 온도 등에서 사용하는 음의 정수(예: -1, -2, -3...)로 나뉜다.

 

 

byte 타입

- 메모리 사용 크기 : 1byte(8bit)

- 저장값 범위 :  -27 ~ (27 - 1) / -128 ~ 127

- 저장값 범위 계산 방법 :  -2(n-1) ~ 2(n-1)-1, n은 비트

 

 

byte 타입 실습 예제

 

line 12 주석을 해제하면 변수의 범위를 넘어갔기 때문에 Type missmatch 오류가 발생한다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
package j241002;
 
public class J101_PrimitiveType_Byte {
 
    public static void main(String[] args) {
        
        byte by1 = -128;
        byte by2 = -100;
        byte by3 = 0;
        byte by4 = 100;
        byte by5 = 127;
        //byte var6 = 128;
        
        System.out.println(by1);
        System.out.println(by2);
        System.out.println(by3);
        System.out.println(by4);
        System.out.println(by5);
        //System.out.println(by6);
        
        /*
          
          Description    Resource    Path    Location    Type
         Type mismatch: cannot convert from int to byte    ---.java    /---/---/--- line 12    Java Problem
          
         */
        
 
    }
 
}
 
cs

 

 

 

 

 

char 타입

- 메모리 사용 크기 : 2byte(16bit)

- 저장값 범위 : 0 ~ 216 - 1 / 0 ~ 65535

 

 

 

 

char 타입 예제

 

char는 '( Singe Qoutation Mark, 홑따옴표)를 사용하여 문자를 저장하고 n진수로 변환된 값도 저장가능하다.

Character는 사전적인 의미로 문자, 기호를 뜻하는데 왜 정수타입인가 이상함을 느낄 수 있다.

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package j241002;
 
public class J101_PrimitiveType_Char {
 
    public static void main(String[] args) {
        
            
        char c11 = 'A'// 문자
        char c22 = 65// 10진수
        char c33 = '\u0041'// 16진수
        char c44 = '가';
        char c55 = 44032;
        char c66 = '\uac00';
        
        System.out.println(c11);
        System.out.println(c22);
        System.out.println(c33);
        System.out.println(c44);
        System.out.println(c55);
        System.out.println(c66);
                
        
    }
}
 
 
cs

 

 

문자(character) 컴퓨터 내부에서는 숫자(정수)로 인코딩되어 처리되기 때문이라고 볼 수 있다.

작은 따옴표로 감싼 형태를 문자 리터럴이라고 하고 유니코드로 변환되어 저장이 된다.

각 문자, 기호에 대응되는 고유한 정수값이 있기때문에 문자도 숫자처럼 저장되고 연산될 수 있다. 

예를 들어 'A' + 1을 수행하면 66이 되어 문자 'B'로 변환된다.

※ 유니코드에 대해서는 추후 작성.

 

 

 

 

int 타입

- 메모리 사용 크기 : 4byte(32bit)

- 저장값 범위 :  -231 ~ (231 - 1) / -2,147,483,648 ~ 2,147,483,647(약20억)

- 저장값 범위 계산 

 

210 = 1024 ≒ 103

 

231

= 210 x 210 x 210 x 2

= 1024 x 1024 x 1024 x 2

≒ 2 x 109

 

 

 

int 타입 예제

10진수 뿐만 아니라 2, 8, 16진수 저장도 가능하다.

개발자에 의해 직접 입력된 값을 리터럴(literal)이라고 하며 리터럴 중 정수로 인식되는 경우는 다음과 같다.


- 2진수(Binary) : Ob, 0B로 시작 / 0과 1로 구성 
- 8진수(Octal) : 0부터 시작, 0~7로 구성
- 10진수(Decimal) : 0~9 로 구성 
- 16진수(Hexadecimal) : 0x, 0X로 시작 0~9로 구성되며 그 이상부터는  A(10),B(11),C(12),D(13),E(14),F(15) 

※ 16진수는 웹에 색상(ex. #000000), 메모리주소(ex. 0x7fff) 등에 사용

※ 진법 변환에 관해서는 추후 작성.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
package j241002;
 
public class J101_PrimitiveType_Int {
 
    public static void main(String[] args) {
        
        int var1 = 0b1001// 2진수
        int var2 = 0206// 8진수
        int var3 = 111// 10진수
        int var4 = 0xAF// 16진수
        
        System.out.println("2진수 : " + var1);
        System.out.println("8진수 : " + var2);
        System.out.println("10진수 : " + var3);
        System.out.println("16진수 : " + var4);
                
    }
 
}
 
cs
 

 

\

long 타입

- 메모리 사용 크기 : 8byte(64bit)

- 저장값 범위 :  -263 ~ (263 - 1) / -9,223,372,036,854,775,808 ~ 9,223,372,036,854,775,807

 

 

 

long 타입 예제

int의 범위를 초과할 경우 long을 사용

정수 리터럴 뒤 l, L을 추가(대문자 권장)

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
package j241002;
 
public class J101_PrimitiveType_Long {
 
    public static void main(String[] args) {
        
        //long var1 = 12345678912;
        long var2 = 12345678912L;
        
        //System.out.println(var1);
        System.out.println(var2);
        
            
 
    }
 
}
 
cs

 

 

 

 

 

float 타입

- 메모리 사용 크기 : 4byte(32bit)

- 저장값 범위 :  (1.4 x 10^-45) ~ (3.4 x 10^38)

- 정밀도 : 소수점 이하 약 7자리(6~9)

 

 

double 타입

- 메모리 사용 크기 : 8byte(64bit)

- 저장값 범위 :  (4.9 x 10^-324) ~ (1.8 x 10^308)

- 정밀도 : 소수점 이하 약 15자리(15~18)

※ float 보다 약 2배정도 정밀도가 높아서 double

 

float, double 정밀도 예제

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package j241002;
 
public class J101_RealNumber_FloatDouble {
 
    public static void main(String[] args) {
 
 
        // 실수값 저장 
        //float var1 = 3.14; // type mismatch
        float var2 = 3.14f;
        double var3 = 3.14// float 보다 약 2배정도 정밀도가 높아서 double 
        
        // 정밀도 테스트 
        float var4 = 0.1234567890123456789f;
        double var5 = 0.1234567890123456789;
        
        
        //System.out.println(var1);
        System.out.println(var2);
        System.out.println(var3);
        System.out.println(var4);
        System.out.println(var5);
        
        
 
    }
 
}
 
cs

 

 

boolean 타입

- True, False를 저장하는 논리형 변수

- 참, 거짓에 따라 조건문, 제어문의 흐름을 변경한다.

- 불리언, 불린 등으로 불린다

 

 

boolean 예제

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
package j241002;
 
public class J101_PrimitiveType_Boolean {
 
    public static void main(String[] args) {
        
        boolean flag = false;
        boolean isRun = true;
        
        System.out.println(flag);
        System.out.println(isRun);
        
    }
 
}
 
cs
반응형

'JAVA' 카테고리의 다른 글

[JAVA][09] Scanner 클래스  (0) 2024.11.17
[JAVA][07] 형변환(Type Casting)  (0) 2024.10.22
[JAVA][05] 변수값 바꾸기1  (0) 2024.10.09
[JAVA][04] 변수(Variable)란?  (1) 2024.10.03
[JAVA][03] Hello World  (0) 2024.10.03

int x = 1, int y = 2 일때 두 변수의 값 교체하기

 

1. tmp 변수를 선언 후 x 값 저장

2. x에 y값 저장 

3. y에 tmp에 저장되어 있는 x값 저장

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
package j240930;
 
public class J101_4_VariableReplacement {
 
    public static void main(String[] args) {
        
        /*
         
        변수 x, y의 값을 서로 교체하여 출력하기
        
        */
        
        int x = 1;
        int y = 2;
        
        System.out.println(x+", "+y); // 1, 2
        
        int tmp = x;
        x = y;
        y = tmp;
        
        System.out.println(x+", "+y); // 2, 1
        
 
    }
 
}
 
cs
반응형

'JAVA' 카테고리의 다른 글

[JAVA][07] 형변환(Type Casting)  (0) 2024.10.22
[JAVA][06] 변수 기본 타입(Primitive Type)  (0) 2024.10.12
[JAVA][04] 변수(Variable)란?  (1) 2024.10.03
[JAVA][03] Hello World  (0) 2024.10.03
[JAVA][02] 이클립스 Perspective 설정  (0) 2024.10.03

 

 

1. 변수(Variable)

- 변하는 수, 변할 수 있는 수

- 데이터를 저장할 수 있는 메모리 공간

- 하나의 값만 저장 가능

 

2. 변수 선언 및 초기화

- 변수타입 변수이름;

- Ex) int num; // 변수타입 int , 변수이름 num

- 변수타입의 종류는 기본형 8개와, 참조형이 있다

 

 

3. 변수 초기화(Initialization)

- Ex) int num = 10;

- int형 타입(정수) 변수이름 num에 10이라는 값을 저장(초기화)

 

 

4. 변수 초기화가 필요한 이유

- JAVA는 문법이 엄격한 언어로 안정성을 위해 초기화가 강제됨(다른 언어에서는 초기화되지 않은 변수를 허용하기도 함)

- 로컬 변수는 스택 메모리에 저장되는데 스택 메모리는 매우 빠르게 생성/삭제되어서  쓰레기값(Garbage Value)이 남아 있을수 있기 때문

- 명시적 초기화는 변수의 초기상태를 알 수 있기 때문에 가독성, 유지보수성 향상 시킴.

 

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
package j240930;
 
public class J101_4_Variable {
 
    public static void main(String[] args) {
        
        // 변수 선언 (Variable Declaration)
        // 변수 : 변하는 수, 단 하나의 값을 저장할 수 있는 메모리 공간
        int a;
        int b;
        int c, d;
        
        
        // 변수 초기화(Variable Initialization) 
        // 대입연산자(=)를 이용히여 값을 저장(초기화)
        // 초기화가 필요한 이유?
        // 1. java에서는 안정성을 위하여 초기화가 강제됨
        // 2. 로컬 변수는 스택 메모리에 저장되는데 매우 빠르게 생성/삭제 되어서 쓰레기값(Garbage Value)이 남아 있을 수 있어서
        // 3. 명시적 초기화는 변수의 초기 상태를 알수 있기 때문에 가독성, 유지보수에 유리
        
        int w = 0;
        int x = 0;
        int y = 0, z = 0;
        
 
    }
 
}
 
cs



 

 

반응형

'JAVA' 카테고리의 다른 글

[JAVA][06] 변수 기본 타입(Primitive Type)  (0) 2024.10.12
[JAVA][05] 변수값 바꾸기1  (0) 2024.10.09
[JAVA][03] Hello World  (0) 2024.10.03
[JAVA][02] 이클립스 Perspective 설정  (0) 2024.10.03
[JAVA][02] 이클립스 설치  (1) 2024.10.01

# Hello World 출력

 

 

1. 프로젝트 생성

- File - New - Java Project 

 

자바 프로젝트 생성

 

 

2. 프로젝트 설정

- Project name 입력

- JRE 17 선택

 

프로젝트 설정

 

3. 패키지 생성 생략

 

4. 클래스 파일 생성

- 프로젝트 우클릭 - New -  Class

 

클래스 파일 생성

 

 

5. 클래스 파일명 입력

- method stub에서 main 메소드 체크

 

클래스 파일명 입력

 

 

6. Hello World 클래스 생성 완료

Hello World 클래스 생성 완료

 

 

7. Hello World 출력

Hello World 출력

 

 

8. F11로 실행

반응형

'JAVA' 카테고리의 다른 글

[JAVA][05] 변수값 바꾸기1  (0) 2024.10.09
[JAVA][04] 변수(Variable)란?  (1) 2024.10.03
[JAVA][02] 이클립스 Perspective 설정  (0) 2024.10.03
[JAVA][02] 이클립스 설치  (1) 2024.10.01
[JAVA][01] JDK 설치 및 환경변수 설정  (1) 2024.10.01

 

 

# 이클립스 perspective 설정

- 웹개발자 설정으로 설치하였기때문에 원할한 작업을 위해 설정 변경이 필요

 

 

 

1. 우측 상단에 Open Perspective 클릭

 

우측 상단에 Open Perspective 클릭

 

 

2. JAVA 선택 후 Open 클릭

 

JAVA 선택 후 Open 클릭

 

 

3.  Perspective 변경 완료

- 우측 상단에  Perspective에  JAVA가 추가되어있는 것을 확인 가능

- JAVA EE, JAVA

- Ctrl + F8로 전환가능

 

 

반응형

# 이클립스 설치

1. OS에 맞는 이클립스 다운로드 후 설치파일 실행

- 추후 JSP를 하기 위해서 web developers 선택

 

이클립스 설치파일 실행

 

 

 

2. 설치 경로 확인 후 INSTALL

 

설치경로 확인 및 설치

 

 

 

3. 설치 진행

 

설치중...

 

 

 

4. 인스톨 완료 후 런치 클릭

 

인스톨 완료 화면

 

 

 

05. 워크스페이스 설정

- 프로젝트 저장 위치, 추후 변경 가능

 

워크스페이스 경로 설정

 

 

 

6. 실행 완료

 

이클립스 첫 실행 화면(welcome)

 

 

7. 이클립스 설치 완료

 

welcome 페이지를 닫은 화면

반응형

# JDK 설치

01. 구글에서 JDK 검색 후 오라클 홈페이지 접속

 

구글에서 jdk 검색

 

 

 

02. 오라클 홈페이지 접속 후 원하는 JDK 버전 다운로드

 

오라클 홈페이지 화면

 

 

 

03. JDK 17 - Windows - x64 Installer 다운로드

 

JDK 17 - Windows - x64 Installer 다운로드

 

 

 

04. jdk-17_windows-x64_bin.exe 실행 및 next

 

JDK 설치파일 실행

 

 

 

05. 저장 경로 설정

- 변경하지 않고 진행

 

JDK 저장 경로

 

 

06. 설치 완료

 

JDK 설치 완료

 

 

 

# JDK 설치 확인

01. 명령 프롬프트 실행

- 윈도우키 + R 또는 명령 프롬프트 검색

 

Window key + R 입력 후 cmd(명령 프롬프트 실행)

 

 

02. java 또는 javac 입력

 

java 또는 javac 등을 입력하여 설치가 되어있는지 확인

 

 

03. 자바 버전 확인 

 

java 버전 확인 결과

 

 

 

 

# JDK 환경변수 설정

- JDK 구버전에서는 환경변수 설정이 필요하였지만

JDK 11버전 이상부터는 인스톨러가 제공되어 설정하지 않아도 가능.

 

- 특정 프로그램에서 필요하거나, 호환성,  원인 모를 오류 등을 대비하여 설정이 필요할 수도 있음.

 

 

 

01. JDK 설치 위치 확인

 

JDK 설치 위치

 

 

 

02. 내 PC 우클릭 후 속성 

- 단축키 : 윈도우키 + Pause break

 

내 PC 아이콘 우클릭 후 속성

 

 

 

03. 설정에서 고급 시스템 설정 클릭

- 윈도우에서 시스템 환경 변수 편집 검색도 가능

 

설정 - 고급 시스템 설정

 

 

04. 고급 - 환경변수 클릭

 

환경변수 - 고급

 

 

05. 하단의 시스템변수 영역에서 새로만들기 클릭

 

시스템 변수 - 새로만들기

 

 

06. 새 시스템 변수 추가

- 변수 이름 : JAVA_HOME

- 변수 값 : C:\Program Files\Java\jdk-17 (JDK 설치 위치)

 

새 시스템 변수 추가

 

 

07. 시스템 변수에서 Path 편집 클릭

 

시스템 변수 Path 편집

 

 

08. path 추가

- %JAVA_HOME%\bin 입력 후 확인

 

path 추가 - %JAVA_HOME%\bin

 

 

 

09. 방금 추가한 Path를 위로 이동 버튼을 이용하여 최상단으로 이동 

 

추가된 path를 제일 상단으로 이동

반응형

'JAVA' 카테고리의 다른 글

[JAVA][04] 변수(Variable)란?  (1) 2024.10.03
[JAVA][03] Hello World  (0) 2024.10.03
[JAVA][02] 이클립스 Perspective 설정  (0) 2024.10.03
[JAVA][02] 이클립스 설치  (1) 2024.10.01
java파일 명령 프롬프트(cmd)로 컴파일 해보기  (0) 2018.06.18

+ Recent posts