Difference between revisions of "컴퓨터프로그래밍및실습 (2022년)/0905"

From DISLab
Jump to navigation Jump to search
(Created page with "== 변수 == * 변수란 기억 장소(메모리)에 대한 별칭이다. * 변수의 선언 <syntaxhighlight lang="java"> int age; // 정수(int) 값을 저장할 수 있는 age 변수 선언 double value; // 실수(double) 값을 저장할 수 있는 value 변수 선언 int x, y, z; // 여러 개를 선언할 수 있음 </syntaxhighlight> * 변수 이름을 붇이는 규칙 *# 첫 번째 글자는 문자이거나 $, _ 이어야 하고 숫자로 시작할 수 없...")
 
Line 2: Line 2:
* 변수란 기억 장소(메모리)에 대한 별칭이다.
* 변수란 기억 장소(메모리)에 대한 별칭이다.


* 변수의 선언 <syntaxhighlight lang="java">
=== 변수의 선언 ===
<syntaxhighlight lang="java">
int age;  // 정수(int) 값을 저장할 수 있는 age 변수 선언
int age;  // 정수(int) 값을 저장할 수 있는 age 변수 선언
double value; // 실수(double) 값을 저장할 수 있는 value 변수 선언
double value; // 실수(double) 값을 저장할 수 있는 value 변수 선언
Line 9: Line 10:
</syntaxhighlight>
</syntaxhighlight>


* 변수 이름을 붇이는 규칙
=== 변수 이름을 붇이는 규칙 ===
*# 첫 번째 글자는 문자이거나 $, _ 이어야 하고 숫자로 시작할 수 없다. (필수)
# 첫 번째 글자는 문자이거나 $, _ 이어야 하고 숫자로 시작할 수 없다. (필수)
*# 영어 대소문자가 구분된다. (필수)
# 영어 대소문자가 구분된다. (필수)
*# 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫 문자는 대문자로 한다. (관례) (maxSpeed, firstName, carBodyColor)
# 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫 문자는 대문자로 한다. (관례) (maxSpeed, firstName, carBodyColor)
*# 문자 수(길이)의 제한은 없다.
# 문자 수(길이)의 제한은 없다.
*# 자바 예약어는 사용할 수 없다. (필수) <table2 class=wikitable head=top sep=bar align=ll>
# 자바 예약어는 사용할 수 없다. (필수)  
<table2 class=wikitable head=top sep=bar align=ll>
분류                  | 예약어
분류                  | 예약어
기본 데이터 타입      | boolean, byte, char, short, int, long, float, double
기본 데이터 타입      | boolean, byte, char, short, int, long, float, double
Line 24: Line 26:
논리값                | true, false
논리값                | true, false
예외 처리와 관련된 것 | try, catch, finally, throw, throws
예외 처리와 관련된 것 | try, catch, finally, throw, throws
기타                  | transient, volatile, package, import, synchronized, native, final, static, strictfp, assert </table2>
기타                  | transient, volatile, package, import, synchronized, native, final, static, strictfp, assert
</table2>
 
 
=== 변수의 사용 ===
<syntaxhighlight lang="java">
int score;    // 변수 선언
score = 90;  // 값 저장
 
int score = 90; /// 선언과 동시에 값 저장
</syntaxhighlight>
 
=== Literal ===
* 리터럴(literal) : 소스 코드 내에서 직접 작성된 값
** 정수 리터럴 : 0, 75, -100 (10진수), 02, -04 (8진수), 0x5, 0xA, 0xB3, 0xac08 (16진수)
** 실수 리터럴 : 0.25, -3.14 (10진수), 5E7, 0.12E-5 (0.12×10<sup>-5</sup>)
** 문자 리터럴 : 'A', '한', '\t', '\tn'
<table2 class=wikitable sep=bar head=top align=lll>
Escape 문자 | 용도                      | Unicode
\t          | 수평 탭                    | 0x0009
\n          | 줄 바꿈                    | 0x000A
\r          | 리턴                      | 0x000D
\"          | "(큰 따옴표)              | 0x0022
\          | '(작은 따옴표)            | 0x0027
\\          | \                          | 0x005C
\u16진수    | 16진수에 해당하는 유니코드 | 0x0000 ~ 0xFFFF
</table2>
 
=== 변수의 초기화 ===
* 초기화하지 않고 사용하면 오류
<syntaxhighlight lang="java">
int value;
int result = value + 10; // value 값을 초기화하지 않아 오류가 남
</syntaxhighlight>
 
* 초기화하여 사용한 예
<syntaxhighlight lang="java">
int value = 30;
int result = value + 10;
</syntaxhighlight>
 
=== 변수의 사용 범위 ===
* 변수는 블록 범위 내에서 정의, 사용할 수 있음
 
<syntaxhighlight lang="java">
public class VariableScopeExample {
    public static void main(String[] args) {
        int v1 = 15;
        if (v1 > 10) {
            int v2 = v1 - 10;
        }
        int v3 = v1 + v2 + 5; // v2 변수를 사용할 수 없기 때문에 컴파일 에러가 생김
    }
}
</syntaxhighlight>

Revision as of 14:06, 18 July 2022

변수

  • 변수란 기억 장소(메모리)에 대한 별칭이다.

변수의 선언

int age;  // 정수(int) 값을 저장할 수 있는 age 변수 선언
double value; // 실수(double) 값을 저장할 수 있는 value 변수 선언

int x, y, z;  // 여러 개를 선언할 수 있음

변수 이름을 붇이는 규칙

  1. 첫 번째 글자는 문자이거나 $, _ 이어야 하고 숫자로 시작할 수 없다. (필수)
  2. 영어 대소문자가 구분된다. (필수)
  3. 첫 문자는 영어 소문자로 시작하되, 다른 단어가 붙을 경우 첫 문자는 대문자로 한다. (관례) (maxSpeed, firstName, carBodyColor)
  4. 문자 수(길이)의 제한은 없다.
  5. 자바 예약어는 사용할 수 없다. (필수)
분류 예약어
기본 데이터 타입 boolean, byte, char, short, int, long, float, double
접근 지정자 private, protected, public
클래스와 관련된 것 class, abstract, interface, extends, implements, enum
객체와 관련된 것 new, instanceof, this, super, null
메소드와 관련된 것 void, return
제어문과 관련된 것 if, else, switch, case, default, for, do, while, break, continue
논리값 true, false
예외 처리와 관련된 것 try, catch, finally, throw, throws
기타 transient, volatile, package, import, synchronized, native, final, static, strictfp, assert


변수의 사용

int score;    // 변수 선언
score = 90;   // 값 저장

int score = 90; /// 선언과 동시에 값 저장

Literal

  • 리터럴(literal) : 소스 코드 내에서 직접 작성된 값
    • 정수 리터럴 : 0, 75, -100 (10진수), 02, -04 (8진수), 0x5, 0xA, 0xB3, 0xac08 (16진수)
    • 실수 리터럴 : 0.25, -3.14 (10진수), 5E7, 0.12E-5 (0.12×10-5)
    • 문자 리터럴 : 'A', '한', '\t', '\tn'
Escape 문자 용도 Unicode
\t 수평 탭 0x0009
\n 줄 바꿈 0x000A
\r 리턴 0x000D
\" "(큰 따옴표) 0x0022
\ '(작은 따옴표) 0x0027
\\ \ 0x005C
\u16진수 16진수에 해당하는 유니코드 0x0000 ~ 0xFFFF

변수의 초기화

  • 초기화하지 않고 사용하면 오류
int value;
int result = value + 10; // value 값을 초기화하지 않아 오류가 남
  • 초기화하여 사용한 예
int value = 30;
int result = value + 10;

변수의 사용 범위

  • 변수는 블록 범위 내에서 정의, 사용할 수 있음
public class VariableScopeExample {
    public static void main(String[] args) {
        int v1 = 15;
        if (v1 > 10) {
            int v2 = v1 - 10;
        }
        int v3 = v1 + v2 + 5; // v2 변수를 사용할 수 없기 때문에 컴파일 에러가 생김
    }
}