hyperskill - Types and variables - 영어 원문
프로그래밍 안에서, variable (변수) 는 특정한 타입의 값을 저장하기 위한 표시자 입니다. :
string (문자열), number (숫자), 등등.
이번 주제에서는, 자바 프로그램 내부에서 어떻게 변수를 선언하고 사용하는지 배울 겁니다.
Declaring and Initializaing - 선언과 초기화
모든 변수는 이름을 가지고 있는데(식별자로서 알려지기도 합니다), 다른 것들로부터 구별하기 위함입니다.
변수 사용 전에는 무조건 선언해야 합니다.
선언에 대한 일반적인 형태는 밑과 같습니다 :
DataType variableName = initialization;
이 문법의 왼 쪽 부분은 변수를 묘사하며, 오른쪽 부분은 무언가가 할당된다는 것을 설명합니다.
1. type - 타입
값의 유형(데이터 타입)은 연산자가 해당 유형에 저장된 값을 사용 할 수 있게 해 줍니다.
우리가 여기 존재하지 않는 데이터 타입 DataType
을 기입했는데,
이는 일반적인 형태의 변수 선언을 설명하기 위함입니다.
2. name - 이름 및 식별자
이름(식별자)는 다른 변수로부터 서로를 구별합니다.
변수의 이름은 숫자로 시작 할 수 없습니다. 주로 문자로 시작합니다.
당신의 코드에 대한 이해도를 쉽게 만들기 위해서 변수의 이름을 의미있고 가독성 좋게 만드세요.
3. assignment operator - 할당 연산자.
할당 연산자는 =
로 표시되는데, 이는 하나의 값, 혹은 변수 표현식의 결과를 할당하기 위해 사용됩니다.
4. initialization - 초기화
초기화 값은 변수에 할당된 표현식의 결과이거나, 하나의 변수입니다.
이러한 선언에 따르면, 우리는 String 타입의 변수를 선언하고 "java" 단어를 이에 할당할 수 있습니다.
String language = "java";
int
타입의 변수도 선언할 수 있는데, 이는 정수를 저장하기 위해 선언할 수 있습니다.
int numberOfApples = 5;
변수의 이름은 서로를 다르게 만듭니다 : language
는 Language
와 다르듯이.
변수들은 문자열과 숫자들만을 저장 할 뿐만 아니라, 다음 주제에서 배울 예정인 데이터 타입 '문자' 도 저장합니다.
Accessing the value of a variable - 변수의 값에 접근하기
한 번 변수가 선언되면, 해당되는 값에 이름을 이름하여 접근하거나 조정합니다.
밑의 예제에서는, 우리는 변수를 선언하고 출력합니다 :
String daOfWeek = "Monday";
System.out.println(dayOfWeek); // Monday
변수를 또다른 변수로 할당하는 것 또한 가능합니다 :
int one = 1;
int num = one;
System.out.println(num); // 1
변수의 중요한 기능은 바뀔 수 있다는 점 입니다.
변수를 선언하기 위해 다시 값을 변경 할 필요가 없습니다.
그저 =
(할당 연산자:assign operator) 를 사용해서 새로운 값을 할당합니다.
dayOfWeek
이름 변수를 선언하고 값이 변하기 전과 후를 출력 해 봅시다 :
String dayOfWeek = "Monday";
System.out.println(dayOfWeek); // Monday
dayOfWeek = "Tuesday";
System.out.println(dayOfWeek); // Tuesday
여기 변수에 대한 하나의 제약이 있습니다 :
처음 변수의 타입과 같은 타입의 값만 할당 할 수 있다는 겁니다.
따라서, 밑의 코드는 옳바르지 않습니다 :
int number = 10;
number = 11; // ok
number = "twelve"; // 작동하지 않습니다.
Alternative forms of daclaration - 선언의 대체 형태
여기 몇몇의 선언의 대체 형태가 있습니다.
여기 예제에서 보여집니다 :
- 단 하나의 문법에 같은 타입의 변수들을 선언하기
String language = "java", version = "8 or newer";
- 문법들에서 개별로 선언하고 초기화하기 :
int age; // declaration - 선언
age = 35; // initialization - 초기화
하지만, 우리가 이미 알고 있듯이, 이러한 형태들은 희귀하게 사용됩니다.
Type inference - 타입 추론
Java 10 때 부터, 특정한 값 대신, 값에 할당 된 타입에 기초한 자동적인 타입 추론을 강요합니다 :
var variableName = initialization;
여기 두 가지 예제가 있습니다 :
var language = "Java"; // String - 문자열
var version = 10; // int - 정수
이런 기능은 약간 논란이 있을 수 있습니다.
한편으로는, 이 기능은 당신의 코드를 더 간결하게 해 줍니다.
또 다른 한편으로, 명시적으로 타입을 가르키지 않기 때문에, 코드 가독성에 나쁜 영향을 끼칩니다.
지금으로선, 이 코드에 대한 기본적인 생각을 이해하는 데 충분합니다.
우리는 이론에서 타입 추론을 사용하지 않을 건데,
이는 우리의 교육적인 플랫폼이 더 이른 버전의 자바를 사용하는 사람들에게 맞춰져 있기 때문입니다.
하지만, 만약 당신이 이를 연습하고자 한다면,
당신은 Java 10을 충분히 지원하는 플랫폼에서 우리의 타입 추론 코드를 사용해야 합니다.
Conclusion - 결론
자바의 변수들은 서로 다른 데이터 타입들에 값을 저장하기 위해 사용됩니다.
이는 데이터 타입, 이름과 함께 선언 될 필요가 있습니다.
변수들은 선언 후에 조정(수정) 될 수 있지만,
새로운 값은 이전 것과 같은 타입이어야 합니다.
Java 10 이라면, var
키워드는 자동 타입 추론으로 소개되었습니다.
'Hyperskill - 컴퓨터 CS 및 영어 독해 > Java Backend Developer (Spring Boot)' 카테고리의 다른 글
Reading users input with Scanner - Scanner 로 입력값 받기 (0) | 2024.06.19 |
---|---|
Comments - 주석 (0) | 2024.05.06 |
Printing data - 데이터 출력하기 (0) | 2024.05.04 |
Writing first program - 첫 번째 프로그램 작성하기 (1) | 2024.05.03 |
Basic literals: numbers, strings and characters - 기초 변수들 (0) | 2024.05.03 |