Java - 데이터, 변수, 입력 받아오기, 연산
식별자
클래스, 변수, 상수, 메소드 등에 붙이는 이름
- 식별자 작성 원칙
- ‘@’, ‘#’, ‘!’와 같은 특수 문자, 공백 또는 탭은 사용불가, ‘_’, ‘$’는 사용 가능
- 유니코드 문자 사용 가능. 한글 사용 가능
- 자바 언어의 키워드는 식별자로 사용불가
- 식별자의 첫 번째 문자로 숫자는 사용불가
- ‘_’ 또는 ‘$’를 식별자 첫 번째 문자로 사용할 수 있음(일반적이지는 않음)
- 부울 리터럴 (true, false)과 널 리터럴(null)은 식별자로 사용불가
- 길이 제한 없음
- 대소문자 구별- int abc; 와 int Abc; 는 다른 식별자의 선언
자바의 데이터 형(Type : data type)
논리형 : Boolean (1비트)
문자형 : Char (2바이트=16비트)
정수형 : byte (1바이트) / short (2바이트) / int (4바이트) / Long (8바이트)
실수형 : float (4바이트) / double (8바이트)
스트링(String, 문자열)
문자열 : 문자가 열을 짓고 있는 형태, 단어, 문장 등
기본 타입이 아니다. 문자열은 String 클래스를 이용
문자열 상수(리터럴) => “Java”, “대한민국”, “안녕하세요”
변수와 변수 선언
- 변수
값을 기억 또는 저장하기 위한 공간 또는 공간의 이름
변수 값은 프로그램 수행 중 변경될 수 있음 - 변수 선언
데이터형에서 정한 크기의 메모리 할당
int value; // 변수 선언
double weight = 76.66; // 변수 선언 및 생성
char c1 , c2, c3 = 'c'; // c1, c2 는 선언만, c3 는 char타입 선언 동시에 'c' 라는 값 할당
price = 7;
System.out.println(price); // 7
price = -25;
System.out.println(price); // -25
리터럴
출처: https://mine-it-record.tistory.com/100 [나만의 기록들]
프로그램에서 숫자나 문자 등의 값을 직접 표현 한 것
정수, 실수, 문자, 논리, 문자열 상수(리터럴)가 있음
정수 리터럴
int a = 15; int b = 015; int c = 0x15; int d = 0b0101;
실수 리터럴
double float
문자 리터럴
문자 리터럴
단일 인용부호( ‘ ‘ )로 문자를 표현한다.
문자열 리터럴
문자열은 기본타입이 아니다. ( “ “ )로 문자열을 표현한다.
논리 리터럴
boolean a = true; boolean b = 10 > 0;(여기선 b값이 true) boolean c = 0; (C와 달리 boolean 타입으론 1,0을 참,거짓으로 사용 불가
데이터형 변환
자동 데이터형 변환
한 데이터형의 값을 다른 데이터형(type)의 값으로 변환
long m = 25; // 25는 int 타입 25가 long 타입으로 자동 변환
double d = 3.14 * 10; // 실수 연산 위해 10이 10.0으로 자동 변환
원래의 데이터형보다 큰 데이터형으로 컴파일러에 의해 자동 변환
치환문(=)이나 수식 내에서 데이터형이 일치하지 않을 때
강제 데이터형 변환
개발자에 의한 의도적인 타입 변환
값 손실 우려 있음.
추후 클래스, 상속 개념을 배울 때 데이터 형 변환에 대한 개념 필요
double d = 1.9;
int n = (int)d; // n = 1
Scanner 클래스
읽은 바이트를 문자, 정수, 실수, 불린, 문자열 등 다양한 타입으로 변환하여 리턴
인스턴스 생성하여 사용
import java.util.Scanner; // 임포트 문 필요
class Main
{
public static void main(String[] args)
{
Scanner a = new Scanner(System.in); // Scanner 객체 생성
String name = scanner.next(); // "Kim"
String city = scanner.next(); // "Seoul"
int age = scanner.nextInt(); // 20
double weight = scanner.nextDouble(); // 65.1
boolean single = scanner.nextBoolean(); // true
}
}
식, 연산자
- 산술 연산자
더하기 : +
빼기 : -
곱하기 : *
나누기 : / (정수/정수: 부동소수점 제외한 정수 부분만 출력, 그외 나머지 경우는 소수 출력)
나머지 : % (ex. 홀수 짝수 판단)
제곱 연산자는 자바 내 Math 클래스 이용.
-
증감 연산자
count++; // count를 사용한 후 명령이 끝나면 count 값을 1 증가
++count; // count 값을 1 증가한 후에 count를 사용. -
대입 연산자
연산의 오른쪽 결과를 왼쪽 변수에 대입.
연산 우선순위가 가장 낮음. 제일 늦게 함! -
논리 연산자
두 개의 논리값에 논리 연산. boolean 값. (C언어에서는 true 대신 1, false 대신 0) |논리 연산자|설명| |—|—| |!a|a 가 true 이면 false를 나타냄.| |a^b|a,b 의 exclusive-OR 연산. 같은 논리값이면 1, 다른 논리값이면 false.| |a||b|a,b 의 OR 연산. 모두 false인 경우에만 false.| |a&&b|a,b 의 AND 연산. 모두 true인 경우에만 true.| -
비교 연산자 두 개의 값을 비교하여 true/false 결과
댓글남기기