변수(Variable)

sue·2020년 7월 11일
0

java note

목록 보기
3/7

변수(Variable)

메모리(RAM)에 값을 기록하기 위한 공간

변수 사용 목적

값에 의미 부여 (가독성 좋아짐)

  • 한번 값을 저장해 두고 계속 사용 가능
  • 유지 보수 용이

변수 사용법

변수 선언
: 메모리 공간에 데이터를 저장할 수 있는 공간을 할당하는 것
[표현법] 자료형 변수명 = 값;
int num = 100;

변수의 초기화
: 변수를 사용하기 전에 처음으로 값을 저장하는 것
→ 지역변수는 반드시 초기화 해야함

변수 명명 규칙

  1. 변수명은 중복 불가
  2. 대소문자 구분 가능
  3. 예약어(이미 자바에서 사용되고 있는 키워드들) 사용 불가
  4. 숫자 가능 (단, 숫자로 시작하는 건 안됨)
    int age1;
    // int 1age;
  5. 특수문자 가능(단, 언더바(_), 달러($) 이외 특수문자 사용 불가)
    int number_1;
    int number$1;
    //int nubmer!1;
    //int number#1;
  6. 여러 단어 이름은 단어의 첫 글자 대문자로 시작
    단, 첫 시작 글자는 관례상 소문자로 시작
    ex) ageOfVampire, userName
  7. 한글 사용할 수 있으나 영어 사용 권장

+ 생활코딩 JAVA1 - 변수의 효용

내가 그의 이름을 불러주기 전에는
그는 다만
하나의 몸짓에 지나지 않았다. -김춘수 꽃-

변수의 효용은 데이터 타입을 지정할 수 있는 것 뿐만 아니라, 작업할 때 많은 변수들을 한번에 통제할 수 있는 효율성에 있다. 또한 코딩은 상호간 언어이기 때문에 코드를 읽는 상대가 내가 쓴 변수가 어떤 값을 내포하고 있는지(VAT, name, cost, etc...) 쉽게 파악할 수 있도록 좋은 이름을 부여해야 한다.


문자열

컴퓨터에서 “기차“, “출력하세요“등과 같이 단어나 문장을 문자열이라고 표현
“ ”로 묶여 있으면 문자열로 인식하며
Java에서는 String 객체를 이용하여 저장

Scanner

Scanner class
사용자로부터 입력되는 정수, 실수, 문자열을 처리하는 클래스

Scanner sc = new Scanner(System.in);

(next(), nextLine())

사용자가 입력한 문자열을 뽑아오는 메소드
입력받고자 하는 내용을 먼저 출력해서 입력 유도
System.out.print("당신의 이름은 무엇입니까 : ");
next() : 사용자가 입력한 값 중 공백이 있을 경우 공백 이전까지의 값만 읽어온다.
String name = sc.next();
nextLine() : 사용자가 입력한 모든 값을 읽어온다.
String name = sc.nextLine();

(nextInt())

사용자가 입력한 정수값을 뽑아오는 메소드
System.out.print("당신의 나이는 몇살입니까 : ");
int age = sc.nextInt();

(nextDouble())

사용자가 입력한 실수값을 뽑아오는 메소드
System.out.print("당신의 키는 몇 cm입니까 : ");
double height = sc.nextDouble();




sc.nextXXX() 뒤에 sc.nextLine() 메소드가 와야하는 경우

![](https://velog.velcdn.com/images%2Fletthere%2Fpost%2F83a6647f-80fe-48a2-ad9a-42c15408e081%2Fimage.png)

버퍼에 남은 엔터를 빼주는 과정이 필요할 때
=> sc.nextLine() 한번 더 써준다.

nextInt() 다음 nextInt()이 또 나올 때는
nextLine()으로 엔터 버퍼 따로 빼줄 필요 X
=> nextInt()는 엔터를 읽을 수 없기 때문
nextInt() 다음에 nextLine() 올 때만 필요한 작업!


nextLine().charAt(index)

nextchar() 메소드는 존재하지 않기 때문에
'문자' 값을 입력받기 위해서는
sc.nextLine() 메소드를 통해 '문자열'로 먼저 받아주고
그 뒤에 .charAt(index) 메소드를 통해 문자를 추출하는 과정이 필요하다.
index에 0을 대입하면 문자열의 첫번째 문자값을 추출한다는 의미이다.


0개의 댓글