반응형

자바 연산자의 종류

프로그래밍에 있어서 연산자는 빼놓을 수 없습니다. 기본적인 사칙 연산 및 비교, 논리, 대입 연산자를 숙지하지 않으면 프로그래밍을 할 수 없으니 각각 프로그래밍에서 어떤 역할로 사용되는 지 알아봅시다.

종류 연산자 설명
산술 연산자 +   -    *   /   %   <<   >> 사칙 연산(+,-,*,/)과 나머지 연산(%)
비교 연산자 >   <   >=   <=   ==   != 크고 작음과 같고 다름을 비교
논리 연산자 &&   ||   !   &   |   ^   ~ '그리고(and)'와 '또는(or)'으로 조건을 연결
대입 연산자 = 우변의 값을 좌변에 저장
기타 (type)   ?:   instanceof 형변환 연산자, 삼항 연산자, instanceof 연산자

입문자가 연산자를 배울 때 많이 혼동하는 부분은 비교 연산자 '=='와 대입 연산자 '=' 입니다. ==는 비교 연산자이기 때문에 좌항과 우항이 같은지 비교하는 역할을 하고 =는 우변의 값을 좌변에 역할을 합니다. 그리고 비교 연산자 '!=' 좌항과 우항이 서로 다른지 확인합니다. 

// 산술 연산자

System.out.println(10 + 20) // 결과 : 30 출력
System.out.println(5 % 2) // 결과 : 5를 2로 나눴을 때 나머지인 1 출력



// 비교 연산자

System.out.println(5 < 3) // 결과 : 5는 3보다 크기 때문에 false 출력
System.out.println(5 != 5) // 결과 : 5와 5가 다르냐는 비교입니다. 5와 5는 같기 때문에 false 출력



// 논리 연산자

System.out.println(1 < 10 || 5 > 10) // 결과 : 1이 10보다 작거나 5가 10보다 크거나 둘 중 하나가 true이면 true를 출력하기 때문에 true 출력 
System.out.println(1 < 10 && 5 > 10) // 결과 : 1이 10보다 작거나 5가 10보다 크거나 둘 중 하나가 false이면 false를 출력하기 때문에 false 출력



// 대입 연산자

int x = 10; // 좌항에 있는 변수 x에 10을 저장합니다.
반응형

'Java > Java 기초' 카테고리의 다른 글

[Java] .length, .length(), .size()  (0) 2021.07.08
[Java] 증감 연산자 기초  (0) 2021.07.06
[Java] String 배열  (0) 2020.12.25
[Java] 캐스팅(형변환, casting)  (0) 2020.12.25
[Java] 배열의 선언 / 생성  (0) 2020.12.25
반응형

자바의 String 클래스 배열

  String도 int 배열과 다르지 않습니다. 같은 방법으로 선언, 생성할 수 있으며 초기화 방법도 같습니다.

String 배열 초기화

String[] name = new String[3]; // 길이가 3칸인 String 배열 name을 생성

// 1번째 방법

name[0] = "SMITH"; // 0번 인덱스에 값 입력 * 인덱스는 0에서 시작
name[1] = "SCOTT"; // 1번 인덱스에 값 입력
name[2] = "ROONEY"; // 2번 인덱승에 값 입력

// 2번째 방법

name = {"SMITH", "SCOTT", "ROONEY"}; // 초기화 방법만 다르고 1번째 방법과 완전 동일한 배열

 

반응형
반응형

Java 캐스팅

  변수 또는 상수의 타입을 다른 타입으로 변환하는 것을 말합니다.

double a = 10.5;
int score = (int)a;

10.5의 값을 갖는 double 타입의 변수 a와 변수 a를 int 타입으로 캐스팅한 변수 b를 생성하고 출력합니다.
int로 변환되면서 변수 b는 정수 10이 되어 출력됩니다.
국영수 평균을 계산을 계산해봅니다.
ave의 타입이 int형이기 때문에 출력시 소수점은 출력되지 않아 83까지만 출력됩니다.
ave의 타입을 double로 바꿔주고 국영수 총점을 담은 변수 tot를 double 타입으로 캐스팅합니다.
다시 출력하면 소수점 뒷자리도 정상적으로 출력됩니다.
캐스팅을 이용하면 자신이 원하는 소수점 n번째 자리까지 출력하는 것도 가능합니다.

(double)tot/3은 위에서 보신 것처럼 83.3333...으로 출력되었습니다.

여기에 100을 곱하면 8333.3333...으로 바뀌고 이것을 다시 int형으로 캐스팅하면 소수점 뒷자리가 사라집니다.

* ave가 double 타입이기 때문에 사라진 3333..은 0으로 표현되어 8333.0이 됩니다.

이것을 다시 double 타입의 숫자 100으로 나누면 소수점 둘째 자리까지 83.33이 출력됩니다.

캐스팅을 통해 소수점 둘째 자리까지 출력

반응형

'Java > Java 기초' 카테고리의 다른 글

[Java] 연산자의 종류  (0) 2020.12.30
[Java] String 배열  (0) 2020.12.25
[Java] 배열의 선언 / 생성  (0) 2020.12.25
[Java] Integer.parseInt() / Integer.toString(), String과 int 형 변환  (0) 2020.12.23
[Java] String(문자열)  (0) 2020.12.22
반응형

Java 배열의 정의

  '배열(array)' 은 같은 타입의 여러 변수를 하나의 묶음으로 다루는 것을 말합니다. 배열에서 중요한 것은 '같은 타입'이어어야 한다는 것, 즉, 다른 타입으로 이루어진 배열은 만들 수 없다는 것입니다.

int [] score = new int[10]; // int 타입의 값을 10개 저장할 수 있는 배열 생성

String [] name = new String[10]; // String 객체 10개를 저장할 수 있는 배열 생성

  위처럼 int와 같은 기본 타입의 배열도 있고 String과 같은 클래스도 배열에 저장할 수 있습니다.

// 배열의 선언

타입[] 변수명;
타입 변수명[];

int[] score;
int score[]; 

String[] name[];
String name[];

// 3,4번째 줄에 같은 이름의 배열을 선언했는데 실제 프로그램시에는 변수 중복 오류가 발생합니다.
// 9,10번째 줄도 마찬가지로 선언 방식만 참고하시고 실제 프로그램시에는 변수 중복 오류가 발생합니다.

// 배열의 생성

변수명 = new 타입[크기];

score = new int[10];
name = new String[10];

  배열을 선언만 하면 배열을 다루기 위한 참조변수 공간만 만들어지기 때문에 값을 넣을 공간을 생성해줘야 합니다. 하지만 대부분 배열의 선언과 생성을 나눠서 하지 않고 아래와 같이 한 번에 하는 것이 일반적입니다.

int [] score = new int[10]; // int 타입의 값을 10개 저장할 수 있는 배열 생성

String [] name = new String[10]; // String 객체 10개를 저장할 수 있는 배열 생성

 

반응형

+ Recent posts