Java
String
- StringBuffer,StringBuilder와 다르게 불변성을 특징으로 가지고 있으며
- "+"연산자를 이용하여 직접 합칠수가 있다.
선언
package string;
public class String1 {
public static void main(String[] args) {
String a = "CHOCOLATE";
String b = a;
String c = "CHOCOLATE";
String d = new String("CHOCOLATE");
String e = "PASTA";
}
}
equals
- 두 개의 문자열이 동일한 값을 가지고 있는지 결과값을 리턴하는 값이다.
- a==b는 주소가 같은지 비교 / a.equals(b)가 문자열이 같은지 비교하는 것이다.
package string;
public class String2 {
public static void main(String[] args) {
String a = "CHOCOLATE";
String b = a;
String c = "CHOCOLATE";
String d = new String("CHOCOLATE");
String e = "PASTA";
System.out.println(a == b);
System.out.println(a.equals(b));
System.out.println(a == c);
System.out.println(a.equals(c));
System.out.println(a == d);
System.out.println(a.equals(d));
System.out.println(a == e);
System.out.println(a.equals(e));
}
}
indexOf
- 문자열에서 특정 문자가 시작되는 인덱스를 리턴
package string;
public class String3 {
public static void main(String[] args) {
String str1 = "문자열을 공부해봅시다.화이팅";
String str2 = "abcdef";
String str3 = "Chocolate/cake/macron";
System.out.println(str1.indexOf("문자열"));
System.out.println(str2.indexOf("c"));
System.out.println(str3.indexOf("/"));
}
}
length
package string;
public class String4 {
public static void main(String[] args) {
String a = "안녕하세요. 반가워요";
String b = "잘 지내셨나요";
String c = "오랜만에 반가웠어요";
System.out.println(a.length());
System.out.println(b.length());
System.out.println(c.length());
}
}
SubString
- 문자열 중 특정 부분을 뽑아낼 경우 사용한다.
package string;
public class String5 {
public static void main(String[] args) {
String str1 = "substring 함수를 공부해 봅시다";
String str2 = "abcdef";
String str3 = "ghijkl";
System.out.println(str1.substring(0 , 9));
System.out.println(str2.substring(0));
}
}
toUpperCase / toLowerCase
- toUpperCase : 소문자 -> 대문자
- toLowerCase : 대문자 -> 소문자
package string;
public class String6 {
public static void main(String[] args) {
String str1 = "abcdef";
String str2 = "ABCDEF";
System.out.println(str1.toUpperCase());
System.out.println(str2.toLowerCase());
}
}
concat
package string;
public class String7 {
public static void main(String[] args) {
String str1 = "안녕하세요 ";
String str2 = "반갑습니다.";
System.out.println(str1.concat(str2));
}
}
startWith
- 문자열이 지정한 문자로 시작하는지 판단하는 함수(Boolean)
package string;
public class String8 {
public static void main(String[] args) {
String str1 = "문자열을 공부해봅시다.";
String str2 = "감있는 사람";
String str3 = "촉없는 사람";
System.out.println(str1.startsWith("문"));
System.out.println(str1.startsWith("문제"));
System.out.println(str2.startsWith("감"));
System.out.println(str2.startsWith("촉"));
System.out.println(str3.startsWith("감"));
System.out.println(str3.startsWith("촉"));
}
}
endWith
- 문자열의 마지막에 지정한 문자가 있는지를 판단후 있으면 true 없으면 false를 리턴
package string;
public class String9 {
public static void main(String[] args) {
String str1 = "I LOVE YOU";
System.out.println(str1.endsWith("U"));
System.out.println(str1.endsWith("u"));
}
}
replaceAll
- 특정 문자를 바꾸고 싶을 경우에 사용한다.
- 이때 replaceAll은 정규식이 들어간다.
package string;
public class String10 {
public static void main(String[] args) {
String str1 = "문자열을 공부해봅시다.화이팅!";
System.out.println(str1);
System.out.println(str1.replaceAll("문자열","자료구조"));
}
}
replace
- 특정 문자를 원하는 문자로 변경하고 싶을 경우에 사용한다.
package string;
public class String11 {
public static void main(String[] args) {
String str3 = "ramen#home#crome";
System.out.println(str3.replace("#","%"));
System.out.println(str3.replace("ramen","ramenramen"));
}
}
split
- 지정한 문자열을 나눌수 있다.나눈 문자열은 배열로 들어간다.
package string;
public class String12 {
public static void main(String[] args) {
String str3 = "Call me baby";
String[] sp = str3.split(" ");
for(String a : sp){
System.out.println(a);
}
}
}
trim
- 문자열의 시작과 끝에 있는 공백을 없애준다. 중간 공백은 없애주지 않는다.
package string;
public class String13 {
public static void main(String[] args) {
String str1 = " Hello ";
System.out.println(str1);
System.out.println(str1.trim());
}
}
compareTo
- 두개의 String을 비교하여 틀린 부분이 있으면 String 값을 반환한다.
- 같으면 0을 리턴 다르면 ASCII 코드값의 차이를 리턴한다.
package string;
public class String14 {
public static void main(String[] args) {
String str1 = "A";
String str2 = "a";
String str3 = "b";
String str4 = "c";
String str5 = "d";
System.out.println(str1.compareTo(str2));
System.out.println(str1.compareTo(str3));
System.out.println(str1.compareTo(str4));
System.out.println(str1.compareTo(str5));
}
}
contains
- 두개의 String을 비교해서 String을 포함하고 있으면 true 아니면 false를 리턴시켜라
package string;
public class String15 {
public static void main(String[] args) {
String a = "Home School";
String b = "School";
String c ="Students";
System.out.println(a.contains(b));
System.out.println(a.contains(c));
}
}
charAt
package string;
public class String16 {
public static void main(String[] args) {
String a = "Home at Home";
System.out.println(a.charAt(3));
}
}