2017-02-27 11 views
-5

私は8つの異なる方法を記入する課題に取り組んでいます。私が取り組んでいる特定の方法については、文字列に文字 'G'が含まれているかどうかを確認する必要があります。私は働くと思ったものを考え出したが、そうではない。また、これは基本的なJavaクラスであり、かなり新しくなっていますので、あなたが何をしたのか説明してください。文字列xに文字 "G"が含まれているかどうかを確認するメソッドを書く

/** 
* Where is the location of the letter G (upper or lower case) in 
* the given string? 
* @param x String to check 
* @return 0 based location of first occurrence of G in x, 
*   -1 if G is not present. 
*/ 
public static int indexOfG(String x) { 
    char[] array = x.toCharArray(); 
    for(int i = 0; i < array.length; i++){ 
     if(array[i] == 'G'){ 
      return i ; 
     } 
    } 
} 
+1

にJava文字列の方法の下に使用することができます。フォームの質問_ "私のコードの束は、私のためにそれをデバッグしてください" _は話題外だと考えられています。詳細については、[help]にアクセスし、[ask]をお読みください。 「うまくいかない」とは十分ではありません。 –

+3

文字列中に文字が見つからなかった場合に備えて、最後に 'for-loopの後ろに' 'return -1;'がありません。また、メソッドは大文字と小文字を区別しませんか?もしそうなら、 'if'を' if(array [i] == 'G' || array [i] == 'g') 'に変更してください。 – AntonH

+0

文字配列を作成するのはなぜですか?他の人が言ったように、x、indexOf()を使うことができます。あなたがそれをすることを許可されていない場合(つまり、自分で書く必要がある場合)、なぜx.charAt(i)でテストしないのですか? – FredK

答えて

2

Java String

弦楽のためのindexOfはすでにあります。オラクルのJavaドキュメントから

:指定された部分文字列が最初に出現したこの文字列内のインデックスを返します

のindexOf(String str)文字。

EDIT

使用して文字列のメソッドは許可されない場合がありますので、私はあなた自身のindexOfの実装に関するいくつかのヒントを与えることができます。

// This is a more concise and easier to read version 
public static int indexOfG(String str){ 

    for(int i = 0; i < str.length(); ++i){ 
     if(str.charAt(i) == 'G' || str.charAt(i) == 'g') return i; 
    } 
    return -1; 
} 

このメソッドを一般的なものとして設定してください。このメソッドは、2番目のパラメータを検索するcharとして受け入れます。

+0

'indexOf(int ch)'がおそらく良いでしょう。 – AntonH

+0

@AntonH彼は他のオーバーロードを見つけることができませんので、大したことはありません –

+0

初めに多くの時間Javaクラスでは、特定の標準的なJavaライブラリメソッドの使用が許可されていません。私はこれがこのクラスの場合であると推測しています。彼はindexOfを使用することができません –

0
public static int indexOfG(String x) { 
    char[] array = x.toCharArray(); 
    for(int i = 0; i < array.length; i++){ 
     if((array[i] == 'G') || (array[i] == 'g')){ 
      return i ; 
     } 
    } 
    return -1; 
} 

上記のコードは、ゼロベースの最初の 'g'の位置を示しています。

Alternativlyあなたも申し訳ありませんが、これはStackOverflowのがどのように動作するかではありません

公共int型のindexOf(int型CH)

関連する問題