백엔드/Java

Java 기초 다지기: 변수, 데이터 타입, 연산자

짱뚱짱 2024. 9. 26. 12:14

📢 주석

// 한 줄 주석
/* 여러 줄 주석. */

 

📢 출력

콘솔에 출력을 할 때는 System.out.println() 메서드 사용

System.out.println("Hello, World!");
// syso 입력하고 ctrl + space 자동완성

 

📢 변수와 데이터타입

Java에는 8가지 기본 데이터 타입 존재.  ( 이 외에는 전부 참조 자료형임)

  • byte
  • char
  • short
  • int
  • long
  • float
  • double
  • boolean

  • String 은 의외로 기본 자료형이 아닌 참조형임.. (객체임)→ 그래서 비교 불가
    • 왜 그럴까?
      String str1 = "Hello";
      String str2 = "Hello";
      String str3 = new String("Hello");
      
      System.out.println(str1 == str2); // true (동일한 리터럴 "Hello"을 참조)
      System.out.println(str1 == str3); // false (서로 다른 객체를 참조)
      
    • String 변수들을 비교할 경우, 변수가 참조하는 메모리 위치를 비교하게 됨(후에 배열에서 자세히 다룸).. → String 변수들이 같은 객체를 참조할 때는 true를 반환하므로 상관 없지만, 다른 객체를 참조하는 경우 false 반환.
    • == 연산자가 아닌 equals() 메서드를 사용하여 정확한 비교 가능.

  • 변수는 { } 범위 내에서만 사용 가능하며, 범위를 벗어나면 사용할 수 없다.
int num = 10;
System.out.println(num); // 10
{
    int num2 = 20;
    System.out.println(num2); // 20
}
// System.out.println(num2); // 오류 발생

 

 

📢 문자형과 문자열

  • char: 한 글자를 저장. 예: char ch = 'a';
  • String: 문자열을 저장. 
  • 문자를 정수로 변환
System.out.println((int)ch); // 유니코드 값 출력

 

📢 숫자형

long l = 1234567L; // long 형( L 생략가능함)
System.out.println(l);

float f = 0.1f; // float 형
System.out.println(f);

 

📢 연산자

System.out.println(1 + 2); // 3
System.out.println(1 + 2 + "가나다"); // 3가나다
System.out.println("가나다" + (1 + 2)); // 가나다3

 

📢 실습

package day01;

public class Test02 {

	public static void main(String[] args) {
		/* 국어 영어 수학 세 점수의 합계와 평균을 출력
		 * if문 이용하여 평균 80점 이상이면 pass / fail
		 */
		int kor = 78;
		int eng = 80;
		int math = 90;
		
		int sum = kor + eng + math;
		double avg = sum / 3.0;
		
		System.out.println("합계 : "+sum);
		System.out.println("평균 : "+avg);
		
		if(avg>=80) {
			System.out.println("pass");
		}else {
			System.out.println("fail");
		}
		
	}

}

 

결과

합계 : 248
평균 : 82.66666666666667
pass

 

'백엔드 > Java' 카테고리의 다른 글

Java로 계산기 만들기  (1) 2024.09.28
Java 메서드 (Method)  (1) 2024.09.26
Java 배열, 문자열 처리  (2) 2024.09.26
Java Scanner 클래스  (2) 2024.09.26
개발 환경 세팅  (4) 2024.09.25