일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- corou
- userprog
- CSS
- 스택
- 크래프톤 정글
- 오블완
- Flutter
- defee
- 백준
- HTML
- 소켓
- 코드트리
- TiL
- 자바
- 자바스크립트
- 4기
- Java
- 크래프톤정글
- 사이드프로젝트
- 모션비트
- Vue.js
- pintos
- 핀토스
- JavaScript
- 알고리즘
- 나만무
- 큐
- 리액트
- 티스토리챌린지
- 시스템콜
- Today
- Total
미새문지
JAVA. Day02 변수 본문
변수란?
컴퓨터가 일을 하기 위해선 많은 자료를 사용해야합니다
그 자료들은 논리적인 형태로 컴퓨터 내부에 수치가 변하며 존재하는데 그러한 '변하는 수', 혹은 변하는 값을 넣는 공간을 '변수'라고 합니다
변수에 자료를 넣을 때는 = 기호를 사용하는데
이 기호는 수학적개념의 같다 개념이 아닌 (변수이름 = 내용)에 내용을 변수이름에 넣는다는 의미로 사용합니다
변수의 이름은 정하는 규칙이 있는데
1. 변수 이름은 반드시 밑줄(_), 문자로 시작해야만 하고 특수문자 및 숫자로 시작할 수 없습니다.
2. 예약어는 금지됩니다.
- 각 프로그래밍 언어는 뜻이 고정된 예약어가 존재하는데 이 예약어와 같은 문자열로는 사용할 수 없습니다,
- ex) True, if, while, try, and, ... 는 사용 금지
3. 대소문자 잘 구별하기
- 대소문자가 다르면 다른 변수로 기억되어 혼동이 올 수 있고, 예약어도 대소문자가 바뀌면 적용이 안되어 주의해야 합니다,
첫 코딩의 시작은 출력으로 시작됩니다
출력을 위한 간단한 코드는 System.out.print("");입니다
System.out.print("안녕하세요!");
result = 안녕하세요!
여기서 맨 뒤에 ;는 컴퓨터가 한 줄이 끝났음을 인지해야하기 때문에 반드시 넣어줘야합니다
쌍따옴표(" ")의 역할은 안에 있는 단어가 명령어가 아니라 문자열임을 알려주기 위해 사용하고요
안의 값은 숫자, 영어, 한글, 등등 여러가지가 들어가는데, 각 값의 종류에 따라 자료형(type)이 바뀝니다
자료형 type 예시
정수 int 5, -5, 10, 0,...
실수 double 3.14, -5.1,...
문자 char 안, A, b,...
문자열 String 안녕하세요, apple,...
그런데 쌍따옴표(" ")는 숫자에 사용하는것이 아닌 문자열에 사용을 합니다
컴퓨터는 사람이 쓰는 언어를 알 수 없기 때문에 이것이 숫자다 문자다 라는걸 인지를 시켜줘야하는데
쌍따옴표(" ")안에 들어간 숫자나 단어는 문자열(String)으로 정하기로 약속했고
문자(char)는 따옴표(' ') 로 정하기로 약속했습니다
정수나 실수의 경우는 따옴표를 사용하지 않고 그대로 넣으시면 됩니다
System.out.print("문미새");
result = 문미새
System.out.print('A');
result = A
System.out.print(10);
result = 10
print는 출력메소드라고 하는데 출력메소드에도 종류가 있습니다
- print() : 괄호 안에 있는 값을 콘솔창에 출력한다(줄바꿈X)
- println() : 괄호 안에 있는 값을 콘솔창에 출력한다(줄바꿈O)
- printf() : 형식을 지정하여 출력한다(줄바꿈X)
System.out.println("문미새");
System.out.println("문미새");
result : 문미새
문미새
주석이란?
코딩을 하다보면 이 코드가 어떤건지 다른개발자가 내 코드를 봤을 때 이 코드가 어떤건지 알기 어려울때가 많습니다. 당연히 개발자마다 코드를 짜는 방식이 다르기 때문이죠
이러한 사태를 방지하기 위해 각 코드에 설명을 달아놓는걸 주석이라고 합니다
//내 별명
System.out.println("문미새");
주석은 //(슬래시 2개)로 사용합니다
주석이 길경우엔 한번에 주석처리할수도 있는데
/* 내 별명,
이 별명은
LA로부터 시작되어
*/
System.out.println("문미새");
/* 범위주석 */ 으로 사용합니다
Q) print와 println은 알아봤는데 그럼 printf는 어디에 사용합니까?
printf는 형식을 갖춘 문자열을 콘솔창에 출력하는 기능을 합니다
System.out.printf("오늘은 %d일 입니다", 14);
result = 오늘은 14일 입니다
Q) 분명 %d일이라고 써있는데 14일로 나오네요?
코드 뒤쪽에 써있는 값을 %로 끌어와 14일로 나오는겁니다
이렇게 %d, %c 등으로 표현하는것을 형식 지정자라고 합니다
형식지정자란?
각 다양한 데이터들을 화면에 출력하기 위해 형식지정자를 사용하는데, 데이터에 맞지 않는 형태의 형식지정자를 사용하면 오류가 발생합니다
종류
자료형 형식지정자
int %d
double %f
char %c
String %s
에 맞게 사용해야 합니다
자료형은 int(정수)인데 %c를 사용한다던지 하면 오류가 발생하는 거죠
System.out.printf("오늘은 %d일 입니다", 14);
System.out.printf("원주율은 %f입니다", 3.14);
System.out.printf("나의 학점은 %c입니다", 'A');
System.out.printf("내 이름은 %s입니다", "문미새");
result = 오늘은 14일 입니다
result = 원주율은 3.140000입니다
result = 나의 학점은 A입니다
result = 나의 이름은 문미새입니다
이상한게 보이시나요?
왜 원주율이 3.14에서 안끝나고 0000이 붙는걸까요
이유는 %f 형식지정자는 실수가 들어가는데 소숫점은 6자리까지 표현되게 설정되어 있습니다. 그래서 6자리를 다 안채우게되면 뒤에 0이 붙는겁니다.
0을 보고싶지 않으면 자릿수를 안보이게 설정이 가능합니다.
System.out.printf("원주율은 %.2f입니다", 3.14);
result = 원주율은 3.14입니다
여기서 .2는 소숫점을 둘째 자리까지만 표현한다 라는 뜻입니다
2가 아닌 4로 바꾸면 넷째 자리인 3.1400 이 되는 거죠
그리고 형식지정자가 여러 개가 동시에 사용될 경우에는 순서대로 들어갑니다
System.out.printf("%d %s %c %.2f", 10, "안녕", 'A', 3.14);
result = 10 안녕 A 3.14
또 출력함수에선 제어문자라는 걸 사용하는데
제어문자란?
문자열 안에서 사용되며 특수한 기능을 하는 문자입니다
제어문자의 종류는
\" : 문자열 안에서 쌍따옴표 표현
\\ : 문자열 안에서 역슬래시 표현
\t : 문자열 안에서 Tab키 표현
\n : 문자열 안에서 Enter키 표현
이 있습니다
System.out.printf("이름은 \"%s\"입니다\n", "문미새");
System.out.printf("이름은\t%s입니다", "김미새");
System.out.printf("내\\이름은 %s입니다\n", "최미새");
result = 이름은 "문미새"입니다
이름은 김미새입니다내\이름은 최미새입니다
결과값 둘째 줄은 \n을 넣지 않아 문장이 그대로 이어집니다
/* 이렇게 두번 째 날이 끝났는데 드디어 코딩의 시작이다!라는 느낌이 확 드네요
출력부터 시작해서 형식지정자, 제어문자 등등 아는 지식이 하나씩 늘어가는게 기분이 좋습니다
꾸준히 배워감으로써 언젠가 프로그래머로 취직할 때까지 계속 나아갑시다 */
'언어 학습 > 자바 연습' 카테고리의 다른 글
JAVA.Day06 swhich문 + for문 (1) | 2022.04.27 |
---|---|
JAVA.Day05 선택제어문 (1) | 2022.04.24 |
JAVA. Day04 연산자 (1) | 2022.04.22 |
JAVA. Day03 변수의 선언 (1) | 2022.04.20 |
JAVA. Day01 JAVA란? (1) | 2022.04.14 |