오늘의하루

[JAVA 공부 1일차] JAVA 실행 순서 및 타입, 연산, 문자열 본문

JAVA

[JAVA 공부 1일차] JAVA 실행 순서 및 타입, 연산, 문자열

오늘의하루_master 2022. 7. 21. 17:48
반응형

Javascript를 공부하며 백엔드 개발자가 되고 싶지만 현실적으로 어렵다는 의견이 많아서 JAVA와 Javascript를 병행해가며 공부하기 시작했다.


자바 설치없이 공부하는 사이트 (JDoodle)

 

JDoodle - free Online Compiler, Editor for Java, C/C++, etc

JDoodle is a free Online Compiler, Editor, IDE for Java, C, C++, PHP, Perl, Python, Ruby and many more. you can run your programs on the fly online and you can save and share them with others. Quick and Easy way to compile and run programs online.

www.jdoodle.com


1. JAVA는 어떻게 실행되는걸까?

  1. 확장자명이 .java이 파일에 JAVA 소스 코드를 작성한다.
  2. 컴파일러가 컴파일을 한다.
  3. 자바 소스코드에 있는 class 변수명과 동일한 확장자 .class를 파일을 찾아서 실행한다.
    • 이때 컴퓨터가 읽을 수 있는 바이트 코드로 변환된다.
    • 폴더명 과 class 변수명은 동일해야 하며 JAVA 소스 코드를 작성하고 저장하면 자동으로 .class 파일이 생성된다.
  4. JVM이 다시 한번 운영체제에 맞게 바이트 코드를 번역해준다.
  5. 컴퓨터 화면에 출력된다.

2. JAVA 기본 구조

//.java
public class Myclass{
	public static void main(Stirng[] args){
    	//source code....
    }
}

위에 있는 코드는 JAVA가 실행되는 가장 기본적인 구조이고 실제 만들고자 하는것은 main함수 안에 작성해 주면 됩니다.


3. JAVA 데이터와 연산

// .java
public class Myclass{
	public static void main(String[] args){
		System.out.println(6); // Number
        System.out.println("6"); // String
        System.out.println("Hello World"); // string
        
        // 문자열과 숫자의 연산 차이
        System.out.pirntln(6 + 6); // Number (12)
        System.out.println("6" + "6"); // string (66)
        System.out.println(6 * 6); // Number(36)
        // System.out.println("6" * "6"); 💥Error!!
        System.out.println("Hello" + " world"); // string (Hello world)
        
        // 문자
        System.out.println('H'); // char
        // ⭐ '' = char  "" = String
        
        // 길이를 확인해볼 수 있다.
        System.out.println("hello".length()); // number (5);
        
        // 타입을 확인하는 방법
        System.out.println("확인하고 싶은것".getClass()); // class java.lang.String
        System.out.println("확인하고 싶은것".getClass().getSimpleName()); // String
        
        //=========================================================================
        
        // 대표적인 타입 알아보기
        int Integer = 1; // 정수형 타입 [최대 2,147,483,647 까지만 나타낼수 있다.]
        // ⭐ 4 byte
        
        short Short = 1; // int 보다 작은 정수형 타입 [최대 32,767 까지만 나타낸다.]
        // ⭐ 2 byte
        
        long Long = 2147999999L; // int 범위를 넘어서는 정수형 타입
        // ⭐ 8 byte ⭐ 특이사항 숫자끝에 L을 붙인다.
        
        double Double = 1.0; // 실수형 타입
        // ⭐ 8 byte
        
        boolean Boo = true; // true, false를 나타내는 논리형 타입
        // ⭐ 1 byte
        
	}
}

JAVA에서 System.out.println은 Javascript의 console.log와 같은 것이다.

System.out.println을 매번 작성하는게 어렵다면 sout을 적은 후 Ctrl+Spacebar을 하면 자동작성된다!

 

// .java
public class Myclass{
	public static void main(String[] args){
    	// Operator
        System.out.println(1 + 1); // 2
        System.out.println(2 - 1); // 1
        System.out.println(2 * 2); // 4
        System.out.println(4 / 3); // 1 몫만 나온다.
        System.out.println(4 % 3); // 1 나머지만 나온다.
        
        // Math
        System.out.println(Math.abs(-9)); // 9 Type : number
        // 절대값
        System.out.println(Math.sqrt(4)); // 2.0 Type : double
        // 제곱근
        System.out.println(Math.pow(5,2)); // 25
        // 제곱
        System.out.println(Math.floor(Math.PI)); // 3.0 Type : double
        // 소수점 버림
        System.out.println(Math.ceil(Math.PI)); // 4.0 Type : double
        // 소수점이 있다면 올림
        System.out.println(Math.PI); // 3.1415926535...
        
        // Math.random
        System.out.println(Math.random()*10);
        // 10미만의 실수들을 하나씩 불러옵니다.
        System.out.println((int)Math.random()*10); // 0 ~ 9 정수
        // (int)를 통해 형변환 시켜줬다.
        System.out.println(((int)Math.random()*6)+5); // 5 ~ 10 정수
        // 원하는 구간 만큼 랜덤한 숫자를 뽑을수 있다.
    }
}

수학적으로 계산이 필요할 경우 Math라는 내장 함수를 이용하면 쉽습니다.

3-1. Math.random으로 로또 번호 생성기 만들기

// .java
import java.util.*;

public class MyClass {
    public static void main(String args[]) {
        ArrayList<Integer> lotto = new ArrayList<>(6);
        for (int i = 0; i < 6; i++){ // 6개 뽑기
            int a = (int)(Math.random()*45)+1; // 1 ~ 45
            lotto.add(a); // lotto ArrayList에 추가한다.
        }
        System.out.println(lotto);
    }
}

4. JAVA 문자열 표현 및 다루기

// .java

public class Myclass{
	public static void main(String[] args){
    	System.out.println("Hello World"); // type : string
        System.out.println('H'); // type : char
        System.out.println("H"); // type : string
        
        // 연산으로 만들기
        System.out.println("Hello" + " World"); // Hello World
        
        // 줄바꿈으로 만들기
        System.out.println("Hello \n World"); // \n에서 줄바꿈이 된다.
        /*
        결과
        Hello
        World
        */
        
        // 문자열에 " "을 사용해서 만들기
        // System.out.println("Hello "World"") 💥 Error!!
        System.out.println("Hello \"World\""); // Hello "World"
        System.out.println("Hello 'world'"); // Hello 'world'
        
        // replace("변경하고 싶은 문자열", "새로운 문자열") 사용해보기
        System.out.println("Hello naver".replace("naver","Tistory"));
        // Hello Tistory
        
    }
}

위 내용은 생활코딩 자바 영상을 통해 공부했습니다.

반응형
Comments