문자열(String)
문자열 타입
- String이 무엇인지 이해한다.
- String을 선언하고 사용하는 법을 이해한다
- String 메서드들을 이해한다.
- StringTokenizer가 무엇인지 이해한다.
- StringBuilder, StringBuffer가 무엇인지 이해한다.
String 타입은 큰따옴표("")로 감싸진 문자열
- String 타입의 변수는 String 변수명;으로 선언할 수 있다.
- 선언한 변수에 문자열을 할당하는 방법은 두 가지가 있다.
- 문자열 리터럴을 할당하는 방법 : 변수 = “문자열”;
- String 클래스의 인스턴스를 생성하여 할당하는 방법 : 변수 = new String(”문자열”);
- 등가비교연산자 좌항 == 우항 두값이 일치하는지 검사하고 일치하면 true 일치하지 않으면 false
- equals() .앞의 변수가 저장하고 있는 문자열의 내용과 () 안의 문자열의 내용이 같은지 비교하여 같으면 true 다르면 false 반환 문자열
- equals()메서드는 객체의 내용(데이터)비교 ex) 문자열..
- ==연산자는 두개체(객체 또는 변수)의 메모리주소를 비교
연산자
- 산술 연산자를 활용할 수 있다.
- 증감 연산자를 활용할 수 있다.
- 복합 대입 연산자를 활용할 수 있다.
- 비교 연산자를 활용할 수 있다.
- 연산자 우선순위를 이해한다.
산술연산자
+ - * / %
나눗셈 연산자를 사용할 때, 좌항과 우항이 모두 int형이면 그 결과도 int형이기 때문에
소수점 이하의 값은 버려지고, 오직 몫만 결과로 반환된다.
좌항이나 우항 중 하나라도 실수 타입의 값이 존재한다면,
실수 타입이 아닌 값도 실수 타입으로 자동으로 형변환되어 계산되며,
결과적으로 실수 간의 나눗셈 연산이 되어 소수점이 버려지지 않은 온전한 값이 결과값으로 반환
증감연산자
num1++; // num1 = num1 + 1;과 같습니다.
++num1; // num1 = num1 + 1;과 같습니다.
num2--; // num2 = num2 - 1;과 같습니다.
--num2; // num2 = num2 - 1;과 같습니다.
- 전위형 증감 연산자 : 증감 연산을 먼저 수행한 후, 그 결과값을 적용합니다. /참조 전에 증가
j = ++i; //증가 후에 참조하여 대입
++i; //전위형은 위로 분리
j = i;
- 후위형 증감 연산자 : 기존의 값을 먼저 적용하고 그다음에 증감 연산을 수행합니다. /참조 후에 증가
j = i++; //참조하여 대입 후에 증가
j = i; // 후위형일때 아래로 분리
i++;
증감연산자가 독립적으로 사용된 경우 전위형과 후위형의 차이가 없다. ++i; i++;
복합대입연산자
// num1~5의 값을 모두 10이라고 한다면,
num1 += 3; // num1 -> 13
num2 -= 3; // num2 -> 7
num3 *= 3; // num3 -> 30
num4 /= 3; // num4 -> 3
num5 %= 3; // num5 -> 1
비교연산자
< > <= >=
이항 비교만 가능
x가 1보다 크고 5보다 작다를 표현할때는 1 < x < 5가 아니라
1 < x && x < 5 로 논리연산자를 사용해야함
등가비교연산자
모든 타입에 사용할 수 있는 연산자 두항의 값이 동등한지의 여부를 판단
기본타입과 참조타입 간에는 사용x 기본타입끼리 o 참조타입끼리 o
== 두값이 같으면 t 아니면 f
!= 두값이 다르면 t 아니면 f
논리연산자
AND 연산자 && : 피연산자 두개 모두 true 일때 true 반환 둘중 하나라도 true가 아니면 false 반환
x는 10보다 크고 20보다 작다
10 < x && x < 20
OR 연산자 || : 피연산자 두개 중 단 하나라도 true 이면 true 모두 false 일 경우에만 false
i는 2의 배수 또는 3의 배수이다
i%2==0 || i%3==0
i = 8
i%2==0 || i%3==0
8%2==0 || 8%3==0
0==0 || 2==0
true || false
true
NOT 연산자 ! : true를 false로 false를 true로 바꾼다
대입연산자 단항연산자는 연산방향이 오른쪽에서 왼쪽으로
boolean b = true;
!!b -> !!true -> !false -> true
&& || ! 공통으로 boolean 타입을 반환
x | y | x && y | x || y |
false | false | false | false |
false | true | false | true |
true | false | false | true |
true | true | true | true |
콘솔 입출력(I/O)
- 다음의 콘솔 출력 메서드들의 차이를 이해하고, 이를 활용할 수 있다.
- System.out.print()
- System.out.println()
- System.out.printf()
- Scanner를 활용하여 문자열 데이터를 입력받을 수 있다.
콘솔 출력
콘솔에 값을 출력하기 위해서는 System.out.print(), System.out.println(), System.out.printf() 메서드를 활용
1. 출력하기 : System.out.print()
System.out.print() 메서드는 소괄호 안의 내용을 단순히 출력하기만 하고, 줄 바꿈을 하지 않음
2. 출력하고 줄 바꾸기 : System.out.println()
System.out.println() 메서드는 소괄호 안의 내용을 콘솔에 출력하고 줄 바꿈
3.형식대로 출력하기 System.out.printf()
System.out.printf()는 지시자(specifier, 형식 지정자)를 이용해 변수의 값을 여러 형식으로 출력해 주는 메서드입니다. 지시자는 이름 그대로 값을 어떤 형식으로 출력할 것인지를 지정하기 위해 사용합니다. f는 formatted의 약자
지시자는 실제로 출력되는 값이 아니며, 값을 변환해 자신의 위치에 출력해 주는 기능
콘솔입력
import java.util.Scanner; // Scanner 클래스를 가져옵니다.
Scanner scanner = new Scanner(System.in); // Scanner 클래스의 인스턴스를 생성합니다.
String inputValue = scanner.nextLine(); // 입력한 내용이 inputValue에 저장됩니다.
System.out.println(inputValue); // 입력한 문자열이 출력됩니다.