2013-02-12 1 views
0
import javax.swing.JOptionPane; 


public class Indexof { 


public static void main(String[] args) { 
    String newSentance = ""; 
    String sentance = JOptionPane.showInputDialog("Enter sentance"); 
    String vowels = "AEIOU"; 
    int len = sentance.length(); 
    for (int i = 0; i >=len; i++) 
    { 
    if(vowels.indexOf(sentance.toUpperCase().charAt(i))>0) 
      { 
       newSentance+=sentance.charAt(i);             
    }  
} 
    System.out.println(newSentance); 

} 

} 

내가 넷빈즈에서 오류를 받고하지하고 아직 newSentance .length는 확실히대로 작동 를 인쇄 할 때 여전히 아무 것도 반환하지 않습니다를 [모든 상수와 함께 새로운 문장을 인쇄하려고] 작동하지 않습니다 오는 방법 인쇄 된 경우 숫자를 올바르게 반환합니다.

그 밖의 다른 기능은 무엇입니까?

+0

JOptionPane이 "sentance"가 0 인 문자열을 반환한다고 생각하지 않습니다. len이 0이기 때문에 for 루프가 실행되지 않고 뉴스 기사가 업데이트되지 않고 아무 것도 인쇄되지 않습니다. –

+0

원본 문장의 길이를 출력하기 때문에'length'가 완벽하게 작동했습니다. 만약 당신의'sentance'가 어떤 모음도 포함하고 있지 않다면, 당신은 당신의 새로운 문장에서 어떤 것도 가질 수 없습니다. –

답변

3

int i = 0; i < len; i++ 

vowels.indexOf(sentance.toUpperCase().charAt(i)) < 0 
로 코드를 수정

결과는 상수 만 인쇄됩니다.

+0

Yess 정말 고마워요. – nmu

0

이 코드 ::

for (int i = 0; i >= len; i++) { 
     if (vowels.indexOf(sentance.toUpperCase().charAt(i)) > 0) { 
      newSentance += sentance.charAt(i); 
     } 
    } 

해야합니다 같은 :

for (int i = 0; i < len; i++) { 
     if (vowels.indexOf(sentance.toUpperCase().charAt(i)) >= 0) { 
      newSentance += sentance.charAt(i); 
     } 
    }