Java
[Java] 기초 자료형과 문자 포매팅.
Rachel_
2022. 1. 5. 20:41
1. 문자형에 대한 이해, 문자 포매팅
public class Chapter03_1 {
public static void main(String[] args) {
// indexOf : 특정 문자가 시작되는 위치를 리턴
String index = "hello World";
System.out.println(index.indexOf("World")); // 6(자바는 숫자를 0부터 세기 때문에 실질적으로 7번째)
// contains : 문자열에서 특정 문자열이 있는지의 boolean;
System.out.println(index.contains("Wor")); // true;
// replaceAll : 문자열 중 특정 문자열을 다른 문자열로 바꾸고자 할 때 사용
System.out.println(index.replaceAll("World", "Java"));
// substring : 문자열의 n<= 출력 < m 의 문자열을 출력. 즉 m의 값은 출력안함
System.out.println(index.substring(0, 4)); // Hell
// split : 특정 기호를 기준으로 데이터값을 분리하는 메소드. 배열로 만들어준다.
String[] resultIndex = index.split(" ");
System.out.println(resultIndex[0] + " " + resultIndex[1]); // {"Hello", "World" } 로 나뉨.
// %d %s %c ... 문자포매팅
// %와 s, d.. 등의 사이에 정수값을 넣으면 사이공간을 공백으로 한다. 음수값을 넣으면 왼쪽정렬이 된다.
System.out.printf("%10s", resultIndex[1]);
// 소수점을 표현할 수도 있다.
double numIndex = 3.21311223344;
// %뒤의 5는 전체자릿수(.소수점포함)를 의미하고, 3은 소수점 뒤의 몇 자리까지 출력할 지를 의미한다.
// 이를 활용해 $10.3f 와 같이 쓸 경우, 공백이 5개 발생 후 " 3.213"가 출력된다.
System.out.println(String.format("\n"+ "%5.3f", numIndex)); // 출력법은 format를 사용하거나 printf 를 사용한다.
}
}
2. 문자데이터의 수정
public class Chapter03_2 {
public static void main(String[] args) {
// 문자열의 추가에는 StrinfBuffer 를 사용하는 법과 string result += " " 를 사용하는 방법이 있다.
// 전자는 하나의 객체를 생성 후 buffer 데이터를 씌워 출력한다면 후자는 새로운 string 객체를 계속해서 생성해 덮어씌우는 형식이다.
StringBuffer sb = new StringBuffer();
sb.append("hi"); // 즉 StringBuffer 라는 객체를 생성 후 계속해서 append 더하는 느낌
sb.append(" hello");
sb.append(" my name is");
System.out.println(sb.toString());
String result01 = "hi"; // "hi"라는 데이터를 가진 result01를 생성
result01 += " hello"; // "hi hello" 라는 데이터를 가진 객체 생성 후, 위의 객체를 삭제...
result01 += " my name is"; // 새로운 객체가 생성되는 이유는, string 객체는 내부의 값을 변경할 수 없는 자료형이기 때문이다.
System.out.println(result01);
// insert : 데이터에 문자열 삽입
sb.insert(0, "Java ");
System.out.println(sb.toString()); // Java hi hello my name is
}
}