StringTokenizer사용
// 한 개의 문장이 주어지면 그 문장 속에서 가장 긴 단어 출력 프로그램
// StringTokenizer사용
class Main{
public String solution(String str){
StringTokenizer st = new StringTokenizer(str);
String answer= "";
while(st.hasMoreTokens()){
String now = st.nextToken();
if(st.nextToken().length() > answer.length()) {
answer = now;
}
}
return answer;
}
public static void main(String[] args){
Main m = new Main();
Scanner sc = new Scanner(System.in);
String str = sc.next();
System.out.println(m.solution(str));
}
}
Split 사용
// split 사용
class Main{
public String solution(String str){
String answer = "";
String[] strArr = str.split(" ");
for (String idx :strArr){
if(idx.length() > answer.length()) answer = idx;
}
return answer;
}
public static void main(String[] args){
Main m = new Main();
Scanner sc = new Scanner(System.in);
String str = sc.next();
System.out.println(m.solution(str));
}
}
indexOf / substring 사용
package prep.test.coding;
import java.util.Scanner;
public class IndexOf {
// split 사용
public String solution(String str) {
String answer = "";
int position = 0;
while((position = str.indexOf(' ')) != -1 ) {
String tmp = str.substring(0, position);
if(tmp.length() > answer.length() ) {
answer = tmp;
}
str = str.substring(position+1);
}
if(str.length()> answer.length()) answer = str;
return answer;
}
public static void main(String[] args){
IndexOf i = new IndexOf();
Scanner sc = new Scanner(System.in);
String str = sc.nextLine();
System.out.println(i.solution(str));
}
}
출처
'Algorithm (Java) > 인프런 알고리즘강의' 카테고리의 다른 글
[인프런/알고리즘] 문자열 - 가장 짧은 문자거리 (0) | 2023.04.25 |
---|---|
[인프런/알고리즘] 문자열 - 회문 문자열 (0) | 2023.04.25 |
[인프런/알고리즘] 문자열 - 특정문자 뒤집기 (0) | 2023.04.25 |
[인프런/알고리즘] 문자열 - 단어 뒤집기 (0) | 2023.04.25 |
[인프런/알고리즘] 최대수입스케쥴 (우선순위 큐) (0) | 2023.04.07 |