concat
: 문자열을 결합
String str = "안녕하세요";
String str1 = new String("하이");
String str2 = "반갑습니다";
String str3;
str3 = str1 + str2;
System.out.println("str3 = "+str);
위의 문장은 문자열끼리 결합 할 수 없어 str만 나온다
//답 안녕하세요
String str4;
str4 = str.concat(str2);//concat 문자열 결합할때 씀
System.out.println("str4 = "+ str4);
//답 안녕하세요반갑습니다
비교함수 equals
회원정보 : 이름 , 주민번호 등에 주로 사용
String str5 = "hello";
String str6 = "hell";
str6 = str6 + "o";
if (str5 == str6) {
System.out.println("str5와 str6는 같은 문자열 입니다");
}else {
System.out.println("str5와 str6는 다른 문자열 입니다");
}
boolean b = str5.equals(str6);
if(b == true) {
System.out.println("str5와 str6는 같은 문자열 입니다");
}
indexOf와 lastIndexOf
char cArr[] = {'a','b','c'};
String str7 = "abcdefghabcd";
int n;
n = str7.indexOf("d");
System.out.println("n = "+n);
n = str7.lastIndexOf("d");
System.out.println("n = "+n);
길이 length -> len
배열명.length
int Array[] = {1,2,3,4,5};
System.out.println("배열의 길이 = "+ Array.length);
//답 : 배열의 길이 = 5
문자열의 길이
int a = 길이를 측정할 변수.length();
str7 = "I can do it";
int len = str7.length(); //length()함수 사용
System.out.println("문자열 길이 = "+ len);
//답 : 문자열 길이 = 11
replace(수정)
String a = 바꿀 문자가 들어있는 .replace("수정할문자", "바꿀문자");
String str8 = "A*B**C";
String repStr = str8.replace("*", "+");
System.out.println("repStr = "+repStr);
//답 : repStr = A+B++C
String s = "신종 코로나 바이러스 감염증(코로나 19)이 전국에서 산발적,";
String rs = s.replace(" ", "");
System.out.println("rs = "+ rs);
//답 : rs = 신종코로나바이러스감염증(코로나19)이전국에서산발적
split
split : token을 활용해서 문자열을 자른다.
aaa-bbb-ccc - : 토큰
저장매체 : 파일, database(oracle)
String a[ ] = 문자열이 들어있는 변수.split("-") // "-"은 "/"이 될 수도 있고 연결된 부호만 사용하면 됨
String str9 = "홍길동-24-2001/10/20-180.2";
String splitArr[] = str9.split("-");
for (int i = 0; i < splitArr.length; i++) {
System.out.println(splitArr[i]);
}
//답 : 홍길동 /n 24 /n 2001/10/20 /n 180.2
substring
원하는 부분만 짤라서 출력함
1.String a = 원하는 값이있는 변수.substring( 시작하는 인덱스번호, 끝나는 인덱스번호);
2. String b = 원하는 값이있는 변수.substring(추출 시작할 인덱스번호); //끝까지
//범위를 통해서 문자열을 취득 (짤라서 원하는것만 불러옴) substring
String str10 = "abcdefghij";
String subStr = str10.substring(0, 4);//0부터 4앞까지
System.out.println("subStr = "+subStr);
//답 : subStr = abcd
subStr = str10.substring(4);//4부터 끝까지
System.out.println(subStr);
//답 : efghij
foUpperCase 와 foLowerCase
foUpperCase : 모든 문자를 대문자로 변경
foLowerCase : 모든 문자를 소문자로 변경
String a = 대문자로 바꿀 변수.toUpperCase( );
String b = 소문자로 바꿀 변수.toLowerCase( );
String str11 = "abcDEF";
String upStr = str11.toUpperCase();
System.out.println("upStr = "+upStr);
//답 : upStr = ABCDEF
String lowStr = str11.toLowerCase();
System.out.println("lowStr = "+lowStr);
//답 : lowStr = abcdef
trim
맨앞 맨뒤의 공백만 없애주는 함수
String a = 공백을 없애고싶은 변수.trim( );
String str12 = " java c 언어 python ";
String trimStr = str12.trim();
System.out.println("trimStr = "+ trimStr);
//답 : trimStr = java c 언어 python
주의;
" trimStr = java c 언어 python "
맨앞과 맨 뒤의 공백만 사라지고 "c 언어" 사이의 공백은 사라지지 않음
valueOf
무조건 문자열로 변경
String a = String.valueOf(바꿀 변수);
int num = 123;
long lo = 1234L;
double d = 123.4567;
String is = String.valueOf(num);
String ls = String.valueOf(lo);
String ds = String.valueOf(d);
System.out.println(num+lo+d);
System.out.println(is+" "+ls+" "+ds);
//답1 : 1480.4567
//답2 : 123 1234 123.4567
int number =234;
String numStr = number +"";
주의;
답1은 숫자로 연산이 진행된 값
**사실 valueOf( )를 쓰지 않고 String numStr = number + ""(아무값이나 대입);
해도 문자열로 변경되기 때문에 많이 쓰지는 않음.
contains 탐색
: 원하는 값을 탐색하여 찾아 True/false로 반환
boolean a = 찾고싶은 문자이있는 변수.contains( 찾을문자 )
String str13 = "서울시 강남구"; //서 울시 라고 하게되면 false가 나옴
boolean b1 = str13.contains("서울");
System.out.println("b1 = "+b1);
//답 : b1 = true
charAt
변수형 a = 찾고싶은 문자가 있는 변수.charAt(인덱스 번호)
번호에 해당하는 값이 출력됨
String str14 = "가나다라마";
char ch = str14.charAt(3);
System.out.println(ch);
//답 : 라
'JAVA > 쓸만한 코드' 카테고리의 다른 글
입력받은 숫자중에 중복이 있는지 체크 (0) | 2020.05.26 |
---|---|
swit[ ] 로 겹치는 랜덤숫자 제거 (0) | 2020.05.26 |
10, 2, 16진수 변환 코드 (0) | 2020.05.26 |
문자열을 숫자로 바꾸기/ Integer.parselnt (0) | 2020.05.26 |
2진법 16진법 쉽게 계산하기 원리(코드 x) (0) | 2020.05.26 |