본문 바로가기

개발/BACK

[Java] 문자열 붙이기/문자열 자르기 + JAVA 8

728x90

 

문자열을 잘라서 파싱하거나

배열에 각각 저장시킬 때, 사용할 수 있는 방법들이다

 


 

1

String,String 문자열 붙이기

 

동일한 String 타입일 때, + 연산자로 문자열을 붙일 수 있다

 

String a = "a";
String b = "b";
String c = "c";
String d = "d";
String e = "e";
String type = " "; 

1)
String alphabet = a+b+c+d+e;

2)
String alphabet = a+type+b+type+c+type+d+type+e+type;

[결과 값] 
1) abcde
2) a b c d e

 

 

2

String,Int 붙이기

String a = "a";

int one = 1;

1)
String mer = a +one; 
	OR
String mer = aaa +String.valueOf(one);

결과

1)
a1

 

3

String 배열 데이터 붙이기

 

Java 8 에서 .join() 메소드가 추가되어, 배열 요소들을 쉽게 합칠 수 있다

String[] test = {"a","b","c","d","e"};

1)
[JAVA 8 추가 메소드] String alphabet =String.join(" ", test);

2)
String alphabet="";
for(String a : test){
	alphabet.concat(a);
}

[결과]

1)
a b c d e
2)
abcde

 

4

List 내부 문자 붙이기

 

List로 데이터가 입력되더있다면, StringUtils 클래스를 사용해서 합치자

List<String> strList = new ArrayList<>();
		strList.add("a");
		strList.add("b");
		strList.add("c");
		strList.add("d");
		strList.add("e");
		
1)       
String mer = StringUtils.join(strList);

2)
String mer = StringUtils.join(strList," ");


[결과]
1)
abcde

2)
a b c d e

 

5

StringJoiner 형태로 문자 붙이기

 

Java 8에서 추가된 StringJoiner 클래스는 문자열을 합치는 것 뿐만 아니라

파라미터를 입력받아서 

StringJoiner("구분자","접두사","접미사") 형태로 사용할 수 있다

StringJoiner 제공 형태 중 하나

StringJoiner st1 = new StringJoiner("");
		st1.add("a");
		st1.add("b");
		st1.add("c");
		st1.add("d");
		st1.add("e");
StringJoiner st2 = new StringJoiner(" ");
		st2.add("a");
		st2.add("b");
		st2.add("c");
		st2.add("d");
		st2.add("e");
StringJoiner st3 = new StringJoiner(" ","[","]");
		st3.add("a");
		st3.add("b");
		st3.add("c");
		st3.add("d");
		st3.add("e");
        
        
[결과]

1)
-> st1.toString();
abcde   
2)
-> st2.toString();
a b c d e
3)
-> st3.toString();
[a, b, c, d, e]

6

Split 으로 문자열 자르기

1)
String alphabet = "abcdefg";
String []a = alphabet.split("");

[결과]
a[0] = a
a[1] = b
a[2] = c
a[3] = d
a[4] = e
a[5] = f

2)
String alphabet = "abcd efg";
String []b = alphabet.split(" ");


[결과]
b[0] = abcd
b[1] = efg

 

7

SubString으로 문자열 자르기

String alphabet = "abcdef";

1)
alphabet.substring(2);

[결과]
-> 2자리부터 끝까지 짤라서 보여줘라
cdef

2)
alphabet.substring(2,5);
-> 2번 자리부터 5번 자리 이전(4번 자리) 까지 짤라서 보여줘라
[결과]
cde
728x90