변수

2022. 2. 21. 18:00·Programing/JAVA

변수 Variable

  • 변수란 : http://thedata.kr/thecoding/coding/what-variable

변수에서 가장 중요 한것

  • 변수에 데이터를 할당 하는 방법
  • 변수에 할당한 데이터를 가져오는 방법
  • 코딩은 이 두가지만 구별 하면 한단계 레벨업

변수에 데이터를 할당 하는 방법

  • 변수 선언 : 자료형 변수명 int a;
  • 변수 선언 및 초기화 : 자료형 변수명 = 데이터 int a = 0;
  • 할당(대입) 연산자 : =

변수에 할당한 데이터를 가져오는 방법

  • 변수에 할당하는 것이 아니면 가져오는 것임
  • System.out.print(변수명);

기본형 변수 데이터 할당 및 출력

정수형

  • int, long
  • int : default 21억 미만 저장시 사용

IntVarTest.java

// 변수 선언
int i0;
long l0;
// 변수 초기화
i0 = 0;
l0 = 0L; // 0l  소문자 가능
// 변수 선언과 초기화
int i1 = 1;
long l1 = 1L; // 1l  소문자 가능

//  출력 : 주의 =>  변수명과 문자열은 다름
System.out.println("i0");
System.out.println("l0");
System.out.println("i1");
System.out.println("l1");
System.out.println("====");
System.out.println(i0);
System.out.println(l0);
System.out.println(i1);
System.out.println(l1);

실수형

  • double, float
  • double : default

DoubleVarTest.java

// 변수 선언
double d0;
float f0;

// 변수 초기화
d0 = 3.14;
f0 = 3.14F; // 0f 소문자 가능

// 변수 선언과 초기화
double d1 = 3.14;
float f1 = 3.14F; // 1f 소문자 가능 

//  출력 
System.out.println(d0);
System.out.println(f0);
System.out.println(d1);
System.out.println(f1);

논리형

  • boolean

BoolVarTest.java

// 변수 선언
boolean t0;
boolean f0;

// 변수 초기화
t0 = true;
f0 = false; 

// 변수 선언과 초기화
boolean t1 = true;
boolean f1 = false; 

//  출력 
System.out.println(t0);
System.out.println(f0);
System.out.println(t1);
System.out.println(f1);

문자형

  • char
  • 한개 문자 저장
  • 여러개의 문자(문자열)은 String 객체 사용

CharVarTest.java

// 변수 선언
char c0;

// 변수 초기화
c0 = 'a';

// 변수 선언과 초기화
char c1 = 'b';

//  출력 
System.out.println(c0);
System.out.println(c1);

// 아스키 코드값을 넣어도 됨
char c2 = 65; 
System.out.println(c2);

참조형

  • 객체타입의 참조 주소를 저장
  • 기본형 변수 이외에는 모두 참조 변수
  • String 클래스 : 문자열을 저장하는 객체 타입
package chapter03;

public class StringEx {

    public static void main(String arg[]) {

        String name; // 변수 선언
        name = "홍길동"; // 변수 초기화

        String name2 = "홍길동"; // 선언과 동시에 초기화
        String name3 = null;   // null값으로 초기화
        String name4 = "";     // ""값으로 초기화

        System.out.println("name2="+name2);
        System.out.println("name3="+name3);
        System.out.println("name4="+name4);
    }

}

상수와 리터럴

  • 상수 : 변수에 데이터 할당 후 변경할수 없는 데이터
  • 리터럴 : 소스에 직접 입력된 데이터
package chapter03;

public class ConstEx {

    public static void main(String[] args) {
        final double PI = 3.14; 
        //PI = 3.14159; // 변경불가
    }
}

변수의 범위(Scope)

  • 변수 선언 후 사용 가능한범위
  • 자바에서 지역변수는 {} 범위를 가짐
package chapter03;

public class ScopeEx { // 1. 클래스 블럭

    int no; // 1. 클래스 블럭 내에서 사용 가능한 변수

    public static void main(String[] args) { // 2. main 메서드 블럭

        String name; // 2. main 메서드 블럭 내에서 사용 가능한 변수

        if (true) {
            // 메서드 블럭 안에서 선언한 변수 사용 가능
            name = "홍길동";

            // if문 블럭안에서 변수 선언
            String email = "hong@test.com";
        }

        // if문 블럭 밖에서 email 변수를 사용하면 에러 발생 
        //email = "hong@test.com";
    }
}

두 변수의 값 교환하기

  • cupA = "red", cupB = "blue" 두 컵의 데이터를 교환하시오.

형변환 type casting

  • 논리형을 제외하고 형변환 가능
  • 자동(묵시적)형변환과 강제(명시적)형변환으로 나눔

자동(묵시적) 형변환

  • 큰크기자료형에 작은크기자료형을 할당하는 경우
  • byte < short < int < long < float < double
package chapter03;

public class CastingEx {

    public static void main(String[] args) {

        // 자동형변환 예시
        int number = 10;    // int 자료형
        long number2 = number;  // 자동형변환 int < long
        float number3 = number2;// 자동형변환 long < float
        double number4 = number3; // 자동형변환 float < double

        System.out.println(number);
        System.out.println(number2);
        System.out.println(number3);
        System.out.println(number4);

    }
}

강제(명시적) 형변환

  • 작크기자료형에 큰크기자료형을 할당하는 경우
  • 작크기자료형 = (작크기자료형) 큰크기자료형
package chapter03;

public class CastingEx2 {

    public static void main(String[] args) {

        // 강제형변환 예시
        double pi = 3.14;   // double 자료형

        int pi2 = (int)pi;  // 강제형변환

        System.out.println(pi2); // 값의 손실 발생
    }
}

문자열을 정수로 변환

  • Integer 클래스 parseInt 메서드 사용
package chapter03;

public class CastingEx4 {

    public static void main(String[] args) {

        String s1 = "1";
        String s2 = "2";

        int i1 = Integer.parseInt(s1);
        int i2 = Integer.parseInt(s2);

        int add = i1 + i2;

        System.out.println(add);


    }
}

'Programing > JAVA' 카테고리의 다른 글

제어문 - 반복문 LOOP  (1) 2022.02.23
제어문 - 조건문 CONDITIONAL  (1) 2022.02.21
연산  (0) 2022.02.21
변수란?  (0) 2022.02.17
변수  (0) 2021.04.01
'Programing/JAVA' 카테고리의 다른 글
  • 제어문 - 조건문 CONDITIONAL
  • 연산
  • 변수란?
  • 변수
쿠크
쿠크
  • 쿠크
    쿠크 개발자
    쿠크
  • 전체
    오늘
    어제
    • 분류 전체보기 (53)
      • Kubernetes (2)
      • Programing (35)
        • JSP (3)
        • JAVA (22)
        • Spring (5)
        • HTML (5)
      • 이외 (12)
        • Git (2)
        • 임시 잡다함 (6)
        • IntelliJ (1)
        • 에러 모음 (2)
      • OS (2)
        • Linux (2)
      • DataBase (2)
        • Mysql (1)
      • 토이 프로젝트 (0)
        • 게시판 만들기 (0)
      • Spring (0)
      • 부동산 or 주식 (0)
  • 인기 글

  • 최근 글

  • 최근 댓글

  • 링크

    • 깃 허브 주소
  • 공지사항

  • 태그

    IntelliJ
    spring
    error
    ubuntu
    HTTP란
    jsp
    HTML
    상속
    Database
    spring-framwork
    클래스
    에러 발생
    MVC
    에러원인
    java
    Linux
    MySQL
    kubernetes
    spring-framework
    스프링 특징
  • hELLO· Designed By정상우.v4.10.3
쿠크
변수
상단으로

티스토리툴바