그래서 내가 가진 코드는 사용자가 문장 (문자열)을 입력하고 문자열을 검색하여 가장 작은 단어를 반환해야하는 숙제를위한 코드입니다. 그러나 문자열의 첫 번째 자리에 숫자가 입력되어야합니다. 예 : "4 이것은 무엇입니까?" 출력은 "IS"이어야하며 숫자는 무시하십시오. 숫자를 무시하는 방법을 알아내는 유일한 방법은 숫자가 될 첫 번째 지점으로 루프를 건너 뛰는 것입니다. 그것은 그 자체로 작동하지만 나는 그것을 나의 프로그램의 나머지 부분에 넣을 때마다 작동을 멈춘다. 어쨌든이 프로그램을 더 깨끗하게 만들 수 있습니까? 당신의 for
루프 (즉 i = 0
에서 시작한다) 내부코드를 수정하십시오. 검색 문자열
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
// Lexicographically smallest word
String TheSentence = sc.nextLine();
String[] myWords = TheSentence.split(" ");
int shortestLengths, shortestLocation;
shortestLengths = (myWords[1]).length();
shortestLocation = 1;
for (int i = 1; i < myWords.length; i++) {
if ((myWords[i]).length() < shortestLengths) {
shortestLengths = (myWords[i]).length();
shortestLocation = i;
}
}
System.out.println(myWords[shortestLocation]);
}
것 "123A abc 방송의 AB3"짧은 단어의 "가", "ABC"와 같은 문장에 대해, "AB"또는 "ab3"? – Kru