2016-03-31 20 views
-3

Ich muss in der Lage sein, ein gewünschtes Zeichen über die Tastatur zu lesen und seinen Index zu finden. Jede Hilfe wäre willkommen!Wie kann ich ein Programm schreiben, um den Index eines Zeichens in einem Satz zu finden?

import java.util.Scanner; 

public class Q12Test 
{public static void main(String args[]) 

    {int index; 

    Scanner kb = new Scanner(System.in); 

    System.out.print("Enter desired character to find its index: "); 
    index = kb.nextInt(); 

    String quote = ("Our greatest weakness lies in giving up. The most certain way to succeed is always to try just one more time. Thomas A. Edison"); 

     for (int i = 0 ; i<quote.length() ; i++) 
     { if (quote.charAt(i) == ' ') 
       System.out.println(i); 
     } 
    } 
} 
+0

Auf welche Weise hat Ihr Versuch nicht wie erwartet? Wenn Sie es debuggen, wo scheitert es? – David

+0

Was ist das Problem, auf das Sie stoßen? Ich meine, das kann nicht gelöst werden, indem der fest codierte Raum ersetzt wird. –

Antwort

0

Du liest gerade Index aber nie in der Suchlogik mit ...

ich den Typ des Index stattdessen für eine char ändern würde und den Index mit dem char bei Index vergleichen i

Beispiel:

public static void main(String[] args) { 
    char index; 
    Scanner kb = new Scanner(System.in); 
    System.out.print("Enter desired character to find its index: "); 
    index = kb.nextLine().charAt(0); 
    final String quote = ("Our greatest weakness lies in giving up. The most certain way to succeed is always to try just one more time. Thomas A. Edison"); 
    for (int i = 0; i < quote.length(); i++) { 
     if (quote.charAt(i) == index) { 
      System.out.println(i); 
     } 
    } 
} 
0

Sie könnten versuchen, den hartcodierte Raum (' ') in Ihrer if Anweisung mit dem Eingang, den Sie vom Benutzer erhalten zu ersetzen.

Zusätzlich ist es passiert einfach so, dass die String Klasse in Java hat eine indexOf Methode, die genau erreichen wird, was Sie versuchen, mit der for Schleife zu tun.

public static void main(String[] args) { 

    Scanner in = new Scanner(System.in); 
    System.out.print("Enter desired character to find its index: "); 
    char charToFind = in.nextLine().charAt(0); 

    String quote = "Our greatest weakness lies in giving up..."; 
    System.out.println(quote.indexOf(charToFind)); // -1 if not found 
} 
Verwandte Themen