λ³Έλ¬Έ λ°”λ‘œκ°€κΈ°
β˜•Java

[Java μ΄ν•΄ν•˜κΈ°] 2. μžλ°”μ˜ λ³€μˆ˜μ™€ μƒμˆ˜

by Luvbit 2024. 4. 26.


πŸ’œ Java의 λ³€μˆ˜μ™€ μƒμˆ˜λž€?

'λ³€μˆ˜(variable)'λŠ” 데이터λ₯Ό μ €μž₯ν•˜λŠ” λ©”λͺ¨λ¦¬μ˜ μ €μž₯ 곡간을 κ°€λ¦¬ν‚€λŠ” μ΄λ¦„μž…λ‹ˆλ‹€.
데이터 값을 μ €μž₯ν•˜κ³ , 이후에 값을 μ°Έμ‘°ν•˜κ±°λ‚˜ λ³€κ²½ν•˜κΈ° μœ„ν•΄ μ‚¬μš©λ©λ‹ˆλ‹€.

'μƒμˆ˜(constant)'도 λ³€μˆ˜μ™€ λ™μΌν•˜μ§€λ§Œ, λ³€μˆ˜μ™€λŠ” λ‹€λ₯΄κ²Œ ν•œλ²ˆ 값을 μ €μž₯ν•œ ν›„ 
λ‹€λ₯Έ κ°’μœΌλ‘œ 변경이 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. λ³€ν•˜μ§€ μ•ŠλŠ” 수λ₯Ό μ˜λ―Έν•©λ‹ˆλ‹€.

 

 

 

 

βœ”οΈλ³€μˆ˜μ˜ νŠΉμ§•

1. λ³€μˆ˜λͺ…(Identifier):
각 λ³€μˆ˜λŠ” κ³ μœ ν•œ 이름을 가지며, 이 이름을 μ‚¬μš©ν•˜μ—¬ λ³€μˆ˜μ— μ ‘κ·Όν•˜κ³  데이터λ₯Ό μ‘°μž‘ν•  수 μžˆμŠ΅λ‹ˆλ‹€

2. 데이터 νƒ€μž…(Type):
λ³€μˆ˜λŠ” νŠΉμ • 데이터 νƒ€μž…μ„ 가지며, 이 νƒ€μž…μ€ μ €μž₯ν•  수 μžˆλŠ” λ°μ΄ν„°μ˜ μ’…λ₯˜μ™€ 크기λ₯Ό κ²°μ •ν•©λ‹ˆλ‹€.
예λ₯Ό λ“€μ–΄, Javaμ—μ„œλŠ” int, float, double, boolean λ“±μ˜ νƒ€μž…μ„ μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

3. κ°’(Value):
λ³€μˆ˜λŠ” 데이터 값을 κ°€μ§‘λ‹ˆλ‹€. 이 값은 ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ 도쀑에 변경될 수 μžˆμŠ΅λ‹ˆλ‹€.

4. μ£Όμ†Œ(Address):
λ³€μˆ˜λŠ” λ©”λͺ¨λ¦¬μ˜ νŠΉμ • μœ„μΉ˜μ— μ €μž₯λ©λ‹ˆλ‹€. λ³€μˆ˜λͺ…은 κ·Έ λ©”λͺ¨λ¦¬ μ£Όμ†Œλ₯Ό μ°Έμ‘°ν•˜λŠ” μ‹λ³„μž 역할을 ν•˜λ©°, ν”„λ‘œκ·Έλž¨μ—μ„œλŠ” μ£Όμ†Œ λŒ€μ‹  λ³€μˆ˜λͺ…을 μ‚¬μš©ν•˜μ—¬ 데이터에 μ ‘κ·Όν•©λ‹ˆλ‹€.

 

 

 

 

 

 

βœ”οΈλ³€μˆ˜μ˜ λͺ…λͺ…

 

    βœοΈκ·œμΉ™ 

  • λ³€μˆ˜μ˜ 이름은 μ•ŒνŒŒλ²³ 문자(λŒ€λ¬Έμž λ˜λŠ” μ†Œλ¬Έμž), 숫자, '$', '_'둜 κ΅¬μ„±λ©λ‹ˆλ‹€.
  • λ³€μˆ˜λͺ…μ—λŠ” 곡백('')을 포함할 수 μ—†μŠ΅λ‹ˆλ‹€.
  • 영문자둜 μ‹œμž‘ν•΄μ•Ό ν•˜λ©°, 숫자둜 μ‹œμž‘ν•  수 μ—†μŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, 5happyλŠ” μœ νš¨ν•˜μ§€ μ•Šμ§€λ§Œ, h5appyλŠ” μœ νš¨ν•©λ‹ˆλ‹€.
  • λŒ€μ†Œλ¬Έμžκ°€ κ΅¬λΆ„λ˜λ©°, 길이에 μ œν•œμ΄ μ—†μŠ΅λ‹ˆλ‹€.
  • 의미λ₯Ό 가진 μ˜ˆμ•½μ–΄(예: int, class, public λ“±)λŠ” λ³€μˆ˜ μ΄λ¦„μœΌλ‘œ μ‚¬μš©ν•  수 μ—†μŠ΅λ‹ˆλ‹€.
  • μƒμˆ˜λŠ” λͺ¨λ‘ μ˜μ–΄ λŒ€λ¬Έμžλ‘œ ꡬ성해야 ν•˜λ©°, μ—¬λŸ¬ λ‹¨μ–΄λ‘œ μ΄λ£¨μ–΄μ§€λŠ” 경우 μ–Έλ”μŠ€μ½”μ–΄('_')둜 ꡬ뢄해야 ν•©λ‹ˆλ‹€.

 

 

   βœοΈκΆŒμž₯ 사항  

  • λͺ…ν™•ν•œ 이름 μ‚¬μš© : 데이터λ₯Ό λͺ…ν™•ν•˜κ²Œ μ„€λͺ…ν•  수 μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ ν† λΌμ˜ 이름은 rabbitNameμž…λ‹ˆλ‹€.
  • 카멜 μΌ€μ΄μŠ€ μ‚¬μš© : μ—¬λŸ¬ λ‹¨μ–΄λ‘œ κ΅¬μ„±λ˜μ–΄ μžˆμ„ 경우, 첫 번째 λ‹¨μ–΄λŠ” μ†Œλ¬Έμžλ‘œ μ‹œμž‘ν•˜κ³ , 이후 각 λ‹¨μ–΄μ˜ 첫 κΈ€μžλŠ” λŒ€λ¬Έμžλ‘œ ν‘œκΈ°ν•©λ‹ˆλ‹€. ex) firstName
  • 단어 μΆ•μ•½ κΈˆμ§€ : κ°€λŠ₯ν•œ ν•œ μΆ•μ•½μ–΄λ₯Ό μ‚¬μš©ν•˜μ§€ μ•Šκ³ , μ „체 λ‹¨μ–΄λ₯Ό μ‚¬μš©ν•˜μ—¬ λ³€μˆ˜μ˜ λͺ©μ μ„ λͺ…ν™•νžˆ ν•˜λŠ” κ²ƒμ΄ μ’‹μŠ΅λ‹ˆλ‹€.

 

 

 

 

 

λ³€μˆ˜ μ‚¬μš© μ˜ˆμ‹œ

* 선언은 λ³€μˆ˜λͺ…을 μ •ν•˜λŠ” 것.
* μ΄ˆκΈ°ν™”λŠ” λ³€μˆ˜μ— 값을 ν• λ‹Ήν•˜λŠ” 것.

//λ³€μˆ˜ μ„ μ–Έ ν›„ μ΄ˆκΈ°ν™”

int age;  // μ΄λ•Œ ageμ—λŠ” 값이 μ •μ˜λ˜μ§€ μ•Šμ•˜μŠ΅λ‹ˆλ‹€.
age = 21;


//μ„ μ–Έκ³Ό μ΄ˆκΈ°ν™” λ™μ‹œ 진행
int age = 21;

 

Javaμ—μ„œ λ‚˜μ˜ λ‚˜μ΄λ₯Ό μ •μ˜ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€.  

 

  1.  '20'이 μ–΄λ–€ μˆ«μžμΈμ§€ 의미λ₯Ό λΆ€μ—¬ν•΄ μ£ΌκΈ° μœ„ν•΄ ageλΌλŠ” 이름을 μ„ μ •ν•©λ‹ˆλ‹€.
  2.  age에 λ‹΄λŠ” 값은 λ¬Έμžκ°€ μ•„λ‹Œ 숫자이기 λ•Œλ¬Έμ—, intλΌλŠ” λ°μ΄ν„°νƒ€μž…μ„ λͺ…μ‹œν•΄ μ€λ‹ˆλ‹€.
  3.  'λ‚˜μ΄λŠ” 20이닀.'λΌλŠ” μ •μ˜λ₯Ό 내렀주듯이 age에 값을 λ„£μ–΄μ€λ‹ˆλ‹€
  4.  μΆ”ν›„ λ‚˜μ΄λ₯Ό 먹을 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 그럴 땐 이름에 값을 λ„£μ–΄μ£Όλ©΄ μ–Έμ œλ“ μ§€ λ³€κ²½ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

 

 

 

 

μƒμˆ˜ μ‚¬μš© μ˜ˆμ‹œ

* λ³€μˆ˜μ˜ λͺ…λͺ…κ³Ό κ·œμΉ™μ€ μƒμˆ˜μ—λ„ λ™μΌν•˜κ²Œ μ μš©λ©λ‹ˆλ‹€.

* μƒμˆ˜λŠ” λ³€ν•˜μ§€ μ•ŠλŠ”λ‹€λŠ” 의미둜 finalμ΄λΌλŠ” ν‚€μ›Œλ“œκ°€ μ‚¬μš©λ©λ‹ˆλ‹€.

final double PI = 3.14159;

 

 

μƒμˆ˜λ₯Ό μ‚¬μš©ν•˜λŠ” 이유 

 

  1. 였λ₯˜ 방지: μƒμˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ ν•œ 번 μ΄ˆκΈ°ν™”λœ 값은 ν”„λ‘œκ·Έλž¨ μ‹€ν–‰ λ™μ•ˆ λ³€κ²½λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. μ΄λŠ” λ°μ΄ν„°μ˜ 무결성을 보μž₯ν•˜λ©°, μ‹€μˆ˜λ‘œ 값이 λ³€κ²½λ˜λŠ” 것을 λ°©μ§€ν•©λ‹ˆλ‹€. 
  2. μ½”λ“œμ˜ κ°€λ…μ„±κ³Ό μœ μ§€ κ΄€λ¦¬μ„± ν–₯상: μƒμˆ˜λŠ” 값이 무엇을 μ˜λ―Έν•˜λŠ”μ§€ μ½”λ“œ λ‚΄μ—μ„œ λͺ…ν™•ν•˜κ²Œ ν‘œν˜„ν•  수 μžˆλ„λ‘ λ„μ™€μ€λ‹ˆλ‹€.  
  3. μ„±λŠ₯ μ΅œμ ν™”: μ»΄νŒŒμΌλŸ¬λŠ” μƒμˆ˜ κ°’에 λŒ€ν•΄ μ΅œμ ν™”λ₯Ό μˆ˜ν–‰ν•  μˆ˜ μžˆμ–΄ μ‹€ν–‰ μ‹œκ°„ μ„±λŠ₯이 ν–₯상될 μˆ˜ μžˆμŠ΅λ‹ˆλ‹€. μƒμˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ λ°˜λ³΅μ μΈ κ³„산이 ν•„μš” μ—†μ–΄μ§€κ³ , λ¦¬ν„°λŸ΄ κ°’을 μ§μ ‘ μ‚¬μš©ν•˜λŠ” κ²ƒλ³΄λ‹€ νš¨μœ¨μ μΈ μ½”λ“œ μ‹€ν–‰μ΄ κ°€λŠ₯ν•΄μ§‘λ‹ˆλ‹€. 
  4. ν”„λ‘œκ·Έλž¨μ˜ μΌκ΄€μ„±: μƒμˆ˜λ₯Ό μ‚¬μš©ν•˜λ©΄ ν”„λ‘œκ·Έλž¨ μ „μ²΄μ—μ„œ μΌκ΄€λœ 정보λ₯Ό μ œκ³΅ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μ‹œμŠ€ν…œ μ „λ°˜μ— 걸쳐 μ‚¬μš©λ˜λŠ” 고정값을 μƒμˆ˜λ‘œ μ •μ˜ν•˜μ—¬, 이 값듀이 ν•„μš”ν•  λ•Œλ§ˆλ‹€ λ™μΌν•œ 값을 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€.

 

 

 

 

 

 

 

 

 

λ³€μˆ˜μ™€ μƒμˆ˜λŠ” λͺ¨λ‘ 값을 닀루기 μœ„ν•΄μ„œ μ‘΄μž¬ν•˜λŠ” μ•„μ΄λ“€μž…λ‹ˆλ‹€.

데이터 νƒ€μž…μ€ λ‹€μŒ ν¬μŠ€νŠΈμ—μ„œ μƒμ„Ένžˆ λ‹€λ£¨κ² μŠ΅λ‹ˆλ‹€!