자바 개념 정리 2

안녕하세요. ! 로밋코딩 입니다.
오늘은 간단하게 배우는 자바 개념 정리 두번째 입니다.
오늘은 연산자, 문자열, 정수, 문자열 비교, 특수문자에
대해서 공부했던 내용을 정리 해봤습니다!
1. 연산자
- 연사자는 우리가 흔히 볼 수 있는 - , + 같은 기호들을 연산자 라고 합니다.
연산자에는 산술 연산자, 대입 연산자, 비교 연산자, 논리 연산자, 삼항 연산자로 나눌 수 있습니다.
앞에 정리된 표를 같이 봅시다.
1-1 산술 연산자
연산자 | 설명 | 예시 | 결과 |
+ | 더하기 | 4 + 2 | 6 |
- | 빼기 | 4 - 2 | 2 |
* | 곱하기 | 4 * 2 | 8 |
/ | 나누기 | 4 / 2 | 2 |
% | 나머지 | 5 % 2 | 1 |
++ | 증가 | ++num num++ |
num의 값 1 증가(전위 연산) num의 값 1 증가(후위 연산) |
-- | 감소 | --num num-- |
num의 값 1 감소(전위 연산) num의 값 1 감소(후위 연산) |
1-2 대입 연산자
연산자 | 설명 | 예시 | 결과 |
= | 오른쪽에 있는 값 또는 식을 왼쪽에 있는 변수에 대입 |
int num = 5; num = num + 3; num = num - 2; |
5 8 6 |
+= | (왼쪽 + 오른쪽) 결과를 왼쪽에 대입 | num += 2; | 7 |
-= | (왼쪽 - 오른쪽) 결과를 왼쪽에 대입 | num -= 2; | 3 |
*= | (왼쪽 * 오른쪽) 결과를 왼쪽에 대입 | num *= 2; | 10 |
/= | (왼쪽 / 오른쪽) 결과를 왼쪽에 대입 | num /= 2; | 2.5 |
%= | (왼쪽 % 오른쪽) 결과를 왼쪽에 대입 | num %= 2; | 1 |
1-3 비교 연산자
연산자 | 설명 | 예시 | 결과 |
> | 왼쪽이 오른쪽보다 큰가? | 7 > 2 | true |
>= | 왼쪽이 오른쪽보다 크거나 같은가? | 7 >= 7 | true |
< | 왼쪽이 오른쪽보다 작은가? | 7 < 2 | false |
<= | 왼쪽이 오른쪽보다 작거나 같은가? | 7 <= 2 | false |
== | 왼쪽과 오른쪽이 같은가? | 7 == 7 | true |
!= | 왼쪽과 오른쪽이 다른가? | 7 != 2 | true |
1-4 논리 연산자
연산자 | 설명 | 예시 | 결과 |
&& | 왼쪽과 오른쪽이 모두 참인가? | ( 7 > 2 ) && ( 5 < 1 ) | true |
|| | 왼쪽 또는 오른쪽이 하나라도 참인가? | ( 6 > 3 ) || (3 < 2 ) | true |
! | (참 또는 거짓) 의 반대 | ! (4 == 4) | false |
1-5 삼항 연산자
연산자 | 설명 | 예시 | 결과 |
조건 ? 참일 때 : 거짓일 때 | 물음표 왼쪽의 조건이 참이면 : 왼쪽 거짓이면 : 오른쪽 |
int x = 3; int y = 5; int max = ( x > y ) ? x : y ; |
5 |
2. 문자열
문자열 : String s = "I like java";
위 부분의 I like java 부분이 문자열이 되고 문자열은 큰따옴표 ( " " ) 로 감싸주면 됩니다.
2-1 문자열 기능
String s = "i like java";* index num 은 0 부터 시작함ex) i_like_java = i 부터 0으로 시작해서 ( 띄어쓰기 포함) 10 까지 있고 길이는 총 ( 11 )
기능 | 설명 | 예시 | 결과 |
length | 길이 | s.length(); | 11 |
toUpperCase | 대문자로 | s.toUpperCase(); | I LIKE JAVA |
toLowerCase | 소문자로 | s.toLowerCase(); | i like java |
contains | 포함 여부 | s.contains("Java"); | true |
indexOf | 위치 정보 | s.indexOf("Java"); | 7 |
lastIndexOf | 마지막 위치 정보 | s.lastIndexOf("a"); | 10 |
2-2 문자열 기능(2)
String s = "I like Java";
기능 | 설명 | 예시 | 결과 |
startsWith | 문자열로 시작하는가? | s.startsWith("I like"); | true |
endWith | 문자열로 끝나는가? | s.endsWith("."); | false |
replace | 문자열 반환 | s.replace("like","love"); | I love Java |
substring | 문자열 자르기 | s.substring(7); (7번째 인덱스 번호부터 읽음) |
Java |
trim | 앞뒤 공백 제거 | s.trim(); | I like Java |
concat | 문자열 결합 | s.concat(" and Python"); I like Java + and Python |
I like Java and Python |
3. 정수, 문자열 비교
3-1 정수 비교
int num1 = 3;
int num2 = 5;
int num3 = 3;
System.out.println(num1 == num2); // false
System.out.println(num1 == num3); // true
3-2 문자열 비교
틀린 문자열 비교
String s1 = "Java";
String s2 = "Java";
System.out.println(s1 == s2); // true
맞는 문자열 비교
String s1 = new String("Java");
String s2 = new String("Java");
System.out.println(s1==s2); // false
하지만 맞는 문자열 비교에서 s1 == s2 는 false 라는 결과가 나오게 됩니다.
왜 틀린걸까요? 그건 참조하는 주소가 다르기 때문인데요
s1 은 (주소1번지)라는 java에
s2 는 (주소2번지)라는 Java에 값이 저장된다고 생각하시면 편합니다.
s1 -> (Java) 1번지
s2 -> (Java) 2번지
그럼 서로 참조하는 주소가 다르기 때문에 s1 == s2 라는 것은 Java라는 글씨가 같아도
false 라는 값을 주는데요. 그래서 자바에서는 문자열의 값을 비교하려면 equals 라는 기능을 쓰면되는데요
String s1 = new String("Java");
String s2 = new String("Java");
System.out.println(s1.equals(s2)); // true(문자열 내용이 같음)
위에 처럼 참조하는 주소가 달라도 equals 라는 기능을 이용하면 문자열의 값이 같은지를 비교 할 수 있게됩니다.
4. 특수 문자 ( Escape Sequence )
특수 문자 | 설명 | 예시 | 결과 |
\n | 줄바꿈 | System.out.println("A\nB") | A B |
\t | 탭 ( 탭만큼 띄어쓰기) | System.out.println("A\tB"); | A B |
\\ | 역슬래시 | System.out.println("C:\\Java"); | C:\Java |
\" | 큰따옴표 | System.out.println("A\"B\"C"); | A"B"C |
\' | 작은따옴표 | System.out.println("A\'B\'C"); | A'B'C |

여기까지
자바 개념 정리 2 였습니다 !.
자바는 확실히 배울수록 어렵다고 느끼고 있습니다 ㅠㅠ
개념을 정확히 잡고 가셔야지 뒤에서 헷갈리지 않는 것 같아요..
다 같이 열코 합시당 !
조금씩 추워지고 있습니다.
다들 따뜻하게 입으시고
감기 조심하세요 ㅎㅎ