[Java] 환경설정, 변수와 타입

오연주·2022년 11월 7일
0

Java

목록 보기
1/7
post-thumbnail

📘 1. JAVA 환경설정

Java 버전별 차이

  • LTS(Long-term Support)버전 과 non-LTS버전 차이는
    LTS버전은 후속 버전이 출시되어도 일정 기간동안 지원을 지속하지만 non-LTS버전은 지원이 종료된다는 차이점이 있다.

JDK(Java Development Kit)

  • Java 어플리케이션 개발을 위해 반드시 필요하며, 사람이 작성한 소스 코드를 번역하여 컴퓨터가 이해할 수 있는 바이트 코드로 변환하는 도구인 Java 컴파일러가 포함되어 있다.
    항해99에서는 안정성이 뛰어난 Azul사의 JDK인 Zulu를 사용함

JRE(Java Runtime Environment), JVM(Java Virtual Machine)

  • 자바로 컴파일된 어플리케이션을 실행하는 역할. 모든 Java 어플리케이션은 JVM이라고 하는 가상의 컴퓨터 공간에서 실행되며, 어떠한 운영체제라도 JVM이 설치되어 있다면 Java 어플리케이션을 실행할 수 있다.

📘 2. 변수와 타입

로컬 변수(local variable)

  • 메소드 블록 내에서 선언된 변수
  • 로컬 변수는 메소드 블록 내부에서만 사용되고 메소드 실행이 끝나면 메모리에서 자동으로 없어진다.
  • 변수는 블록 내 어디에서든 선언할 수 있지만, 변수 사용에는 제한이 따른다. 변수는 자신이 선언된 위치로부터 자신이 속한 블록 내부(중활호{} 사이)에서만 사용할 수 있다.

리터럴(literal)

  • 소스 코드에서 프로그래머에 의해 직접 입력된 값

문자 리터럴을 int 타입에 저장할 경우

  • 작은따옴표(')로 감싼 문자 리터럴(ex: 'A')은 유니코드로 변환되기 때문에 int타입 변수에도 저장할 수 있다.

String

  • 문자열을 저장할 때 사용됨
  • String타입은 기본 타입이 아닌 클래스 타입이다.

실수 타입

  • 자바는 실수 리터럴을 기본적으로 double 타입으로 해석하기 때문에 double 타입 변수에 저장해야한다.
  • float을 사용하고싶다면 리터럴 뒤에 소문자f나 대문자F를 붙여서 사용한다.

정수 연산에서의 자동 타입 변환

  • 정수 타입 변수가 산술 연산식에서 피연산자로 사용되면 int 타입보다 작은 byte, short 차입의 변수는 int 타입으로 자동 타입 변환되어 연산을 수행한다.

📌문자열을 기본 타입으로 강제 타입 변환(p.83)

String -> byteString -> shortString -> intString -> longString -> floatString -> doubleString -> boolean
Byte.parseByte()Short.parseShort()Integer.parseInt()Long.parseLong()Float.parseFloat()Double.parseDouble()Boolean.parseBoolean()

📌기본 타입을 문자열로 강제 타입 변환

String str = String.valueOf(기본타입값);

출력 메소드 3가지

println(내용)print(내용)printf("형식문자열", 값1, 값2, ...)
괄호 안의 내용을 출력하고 행을 바꿔라괄호 안의 내용을 출력만 해라괄호 안의 첫 번째 문자열 형식대로 내용을 출력해라

📌printf() 메소드

  • % [argument_index$(:값의 순번)] [flags(:-, 0)] [width(:전체자릿수)] [.precision(:소수 자릿수)] conversion(:변환문자)
  • 형식 문자열에서 %와 conversion(변환 문자)은 필수로 작성하고 그 외의 항목은 모두 생략할 수 있다.
    %는 형식문자열의 시작을 뜻하고, conversion에는 제공되는 값의 타입에 따라 d(정수), f(실수), s(문자열)을 입력한다.
  • 형식 문자열에 포함될 값이 2개 이상일 경우에는 값의 순번을 알려줘야한다. ex) %1$s, %2$d

📌Scanner 클래스

Scanner sc = new Scanner(System.in); // Scanner 변수 선언 후 시스템의 입력 장치로부터 읽는 스캐너 생성
String inputData = sc.nextLine(); // String변수 선언 후 Enter키 이전까지 입력된 문자열을 읽음

📌값이 동일한지 확인

  • 자바는 기본 타입(byte, short, int, long, float, double, boolean)의 값이 동일한지 비교할 때에는 == 를 사용하고, 문자열(String)이 동일한지 비교할 때에는 equals() 메소드를 사용한다.

✅ 2022.11.07.(월)

드디어 항해99 시작!!
항해99 Pre-Onboarding 1일차!
1. 9시 발제
: 이번 Pre-Onboarding기간이 어떤식으로 진행되는지 알려주셨다.

2. 1시 회고록(restropective) 작성 특강
: 글자, 녹음, 그림 등등을 이용해서 회고록 작성을 한다고 하셨는데 그 중 녹음방법은 부족한 것, 새로운 것이 생각날 때마다 빠르게 작성하기 편리할 것 같아서 나중에 사용해보려한다.
강사님의 책추천 중 읽기 좋은 코드가 좋은 코드다 와 1일 1로그 100일 완성 책은 읽어보고싶다.

3. 3시부터 6시까지 각자 공부시간을 가졌는데 Java, IntelliJ설치를 끝냈고 변수와 타입, 입출력방식을 배웠다.
printf방식은 더 연습해봐야 익숙해질 것 같다.
📌으로 표시한 부분은 내일 한 번 더보기!!

오늘 git강의가 발급된다면 내일 오전에는 git 1주차 강의를 듣자




Reference


  • 혼자 공부하는 자바
profile
안녕하세요. 오연주입니다!👩🏻‍🚀

0개의 댓글