중요한 프로그래밍 능력 중의 하나가 바로 데이터를 잘 다루는 것이다.
변수
값을 저장할수 있는 메모리 상의 공간을 의미하며 이때 들어가는 값들은 변경이 가능하다.
int age; //int는 변수의 타입이며 age는 변수의 이름이다. 문장의 끝은 세미콜론!
위와 같은 방법으로 변수를 선언 할 수 있지만, 후에 값을 또 넣어주는 과정이 번거로워서 바로 초기화를 진행한다.
int age = 25;
int x=0, y=1; // 콤마를 활용해서 여러 변수를 한 줄에 선언할 수 있다.
“변수의 초기화란, 변수를 사용하기 전에 처음으로 값을 저장하는 것”
자바 형식으로 작성해보기
public class Page2 {
public static void main(String[] args){ //자바에서의 main
int year = 2022, age = 14; //변수 정의
System.out.println(year); //자바에서의 print
System.out.println(age);
int birth = year - age; //변수를 통해 사칙연산 가능
System.out.println(birth);
}
}
처음으로 인텔리제이에서 코드를 써봤는데 확실히 파이썬과 C언어와 다른 게 조금 더 복잡하게 돼있다는 것을 느꼈다.
print(year) 하나도 System.out.println(year) 이런 식으로 코드가 길어지네요;;
변수의 명명규칙
- 대소문자가 구분되며 길이에 제한이 없다.
- 예약어는 사용해서는 안 된다.
- 숫자로 시작해서는 안 된다.
- 특수문자는 ‘_’와 ‘$’만을 허용한다.
자바의 예약어
개발자들의 명명규칙
- 클래스 이름의 첫 글자는 항상 대문자로 한다.
- 여러 단어로 이루어진 이름은 단어의 첫 글자를 대문자로 한다. (낙타 표기법)
- 상수의 이름은 모두 대문자로 한다. 여러 단어로 이루어진 경우 ‘_’로 구분한다.
변수의 타입
값(data)과 종류(type)는 크게 ‘문자와 숫자'로 구분되고 숫자는 ‘정수와 실수'로 나눌 수 있다.
자료형은 ‘기본형'과 참조형'으로 크게 나눌 수 있다.
- 기본형 : 실제 데이터(data) 저장
- 참조형 : 값이 저장되어 있는 주소(address)를 값으로 가짐
참조형 변수를 선언할 때는 변수의 타입으로 클래스의 이름을 사용하므로 클래스의 이름이 참조 변수의 타입이 된다.
Date today = new Date(); //Date객체를 생성해서, 그 주소를 today에 저장
- 논리형 : boolean - 1byte (true or false)
- 문자형 : char - 2byte (문자 저장)
- 정수형 : byte - 1byte(byte는 이진 데이터 관리용), short - 2byte, int - 4byte, long - 8byte
- 실수형 : float - 4byte(점 미사’f’), double - 8byte (접미사'd’)(실수 저장에 사용)
&볼드체는 많이 쓰는 거!
상수와 리터럴
상수는 한번 정의하면 변하지 않는 값이다.
상수를 선언하는 방법은 변수와 동일하게 하지만 앞에 final을 붙여주면 된다.
final int MAX_SPEED; //에러 상수는 선언과 동시에 초기화 해야됨
final int MAX_VALUE = 100; //Ok!선언과 동시에 초기화
MAX_VALUE = 200; //에러! 상수는 변하지 않음!
리터럴 : 그 자체로 값을 의미하는 거 위 코드에서 리터럴은 100!
문자열 리터럴 | 문자 리터럴
char ch = 'j' //문자 리터럴은 단어 하나
char ch = '' // 에러 공백은 안됨
String name = "java" // 변수 name에 java 저장
String name = "" //가능 문자열 리터럴은 공백 가능
String name = new String("java") //String도 클래스 이기 때문에 원래는 new를 사용해야 하지만 예외도 허용한다.
public class Page2 {
public static void main(String[] args) {
String name = "ja" + "va";
String str = name + 8.0;
System.out.println(name);
System.out.println(str);
System.out.println(7 + "");
System.out.println("" + 7);
System.out.println(7 + 7 + "");
System.out.println(name + str);
}
}
println과 printf
println은 크게 지시자 사용이 제한되고 자동으로 줄 바꿈이 진행된다. 이를 보안하는 것이 바로 printf
지시자
- %b : true, false
- %d : 정수 형식 출력
- %o : 8진 정수 (#기호 사용 ex. %#o%n)
- %x, %X 16진수 정수 (#기호 사용 ex. %#x%n)
- %f : 부동 소수점 형식 출력
- %c : 문자 출력
- %s : 문자열 출력
Scanner
필수 입력 내용
import java.unit.*; // 이 문장이 있어야 스케너 사용 가능
사용법
이번 학습 후기 : 초반에는 대부분 코드들이 다 파이썬과 유사했지만 마지막에 값을 받는 스캐너를 보고 굳이 이렇게 쓸 필요가 있나 생각이 들었다…😭
오늘의 학습을 여기서 마치고 고쳐야 될 점이 있다면 댓글을 달아주세요! 🥸
'개발 > 자바' 카테고리의 다른 글
[Java] 클래스와 객체 (9) | 2022.06.11 |
---|---|
[Java] 계산기 만들기 (0) | 2022.06.10 |
[Java] 메서드 학습 (0) | 2022.06.10 |
[‘자바의 정석’으로 배우는 자바1] 자바에 대해서 (0) | 2022.05.26 |
댓글