// 100개의 문자열을 담을 수 있는 배열 생성
String[] array = new String[100];
이 때 참조형 변수의 기본 값은 null이므로 각 요소의 값은 null로 초기화 된다.
String[] array = new String[]{"a", "b", "c"};
String[] array = {"a", "b", "c"};
String 클래스는 char 배열에 기능(메서드)를 추가한 것이다.
따라서 String 클래스를 사용하는 것이 문자열을 다루기에 더 편리하다.
- char 배열과 달리, String 객체는 내용을 변경할 수 없다.
String str = "ABCDE"
// charAt(인덱스): 문자열에서 해당 인덱스에 있는 문자를 반환
char ch = str.charAt(3); // 실행 결과: D
// subString(시작,끝): 문자열에서 해당 범위에 있는 문자열을 반환 (범위가 끝-1 까지임을 주의)
string tmp = str.subString(1,4); // 실행 결과: BCD
// equals(문자열): 문자열의 내용이 같은지 확인
if (str.equals("ABC")) { // 실행 결과: false
...
}
// toCharArray(문자열): char배열과 String클래스의 변환
char[] chArr = {'A', 'B', 'C'};
String str = new String(chArr); // char배열 -> String
char[] tmp = str.toCharArray(); // String -> char배열
int num = Integer.parseInt("123"); // 변수 num에 숫자 123이 저장된다.
// 사칙연산 계산기
public class ArrayEx17 {
public static void main(String[] args) {
if (args.length != 3) {
System.out.println("입력 개수 초과입니다");
System.exit(0);
}
int num1 = Integer.parseInt(args[0]); // 첫 번째 숫자: 문자열 -> 숫자
char op = args[1].charAt[0]; // 연산자: 문자열 -> 문자(char)
int num2 = Integer.parseInt(args[2]); // 두 번째 숫자: 문자열 -> 숫자
int result = 0;
switch(op) {
case '+':
result = num1 + num2;
break;
case '-':
result = num1 - num2;
break;
case 'x':
result = num1 * num2;
break;
case '/':
result = num1 / num2;
break;
default:
System.out.println("지원되지 않는 연산입니다.");
}
System.out.println("결과:" + result);
}
}