-> 인덱스에 있는 글자를 char 타입으로 나타낸다.
Ex) "안녕하세요".charAt(2) => '하'
-> 문자열을 char타입의 배열로 만든다.
Ex) "안녕하세요".toCharArray()
★ CharArray()의 길이는 length() 가 아닌 length 로 적는다!
-> 시작인덱스에 적힌 글자부터 끝인덱스에 적힌 글자까지를 나타낸다.
Ex) "안녕하세요".substring(1,4) => "녕하세요"
-> 시작인덱스에 적힌 글자부터 마지막까지 나타낸다.
Ex)"안녕하세요".substring(2) => "하세요"
-> "문자열"에서 최초로 나오는 "찾을문자열"의 인덱스(int)를 알려준다.
Ex) "안녕하세요 건강하세요".indexOf("하") => 2
-> 만약 찾을문자열이 없을경우 '-1'을 띈다.
-> "문자열"에서 마지막으로 나오는 "찾을문자열"의 인덱스(int)를 알려준다.
Ex)"안녕하세요 건강하세요".lastindexOf("하") => 8
-> toCharArray, indexOf, substring
System.out.println("\n=== 파일명만 뽑아온 결과물 (index) ===");
String[] pathFileNameArr = {
"C:/mydocument/resume/나의이력서.hwp",
"D:/mymusic.mp3",
"C:/photo/내얼굴.jpg"};
for(int i=0; i<pathFileNameArr.length; i++) {
// char 타입의 배열로 만들어서 chArr에 저장
char[] chArr = pathFileNameArr[i].toCharArray();
// 거꾸로 배열하기
String str_reverse = "";
for(int j=chArr.length-1; j>=0; j--) {
// length-1 => 마지막 index
str_reverse += chArr[j]; // 거꾸로 나열
} // end of for---------
// 거꾸로 나열된 것을 indexOf로 파일 구분 찾아내기
int idx = str_reverse.indexOf("/");
if(idx != -1) { // -1일경우는 없는 경우니 제외
// 거꾸로 나열된 상태에서의 index 값이니
// idx 의 뒷부분은 파일명 X => 끝인덱스 설정
str_reverse = str_reverse.substring(0,idx);
chArr = str_reverse.toCharArray();
// char타입 문자열에 새로 저장하기
// 다시 거꾸로 돌려놓기
String str_result = "";
for(int k=chArr.length-1; k>=0; k--) {
str_result += chArr[k];
// char타입으로 배열된 값을
// String 타입으로 저장하기
} // end of for--------------
System.out.println(str_result);
} // end of if---------
} // end of for------------
-> lastIndexOf, substring
System.out.println("\n=== 파일명만 뽑아온 결과물
+ "(lastIndex) ===");
String result ="";
for(int i=0; i<pathFileNameArr.length;i++) {
int idx = pathFileNameArr[i].lastIndexOf("/");
// 마지막으로 "/" 있는 위치찾기
if(idx != -1) {
// -1일경우는 존재하지 않는다는 이야기
result = pathFileNameArr[i].substring(idx+1);
// idx 부터 나오면 '/'부터 나오므로
// 파일명부터 나오려면 +1 을 해주어야한다.
} // end of if---------
System.out.println(result);
} // end of for-----
index : https://velog.io/@jjoung-2j/Index
my.day10.a.string -> Main_String