2017-08-13 32 views
-5

私は簡単なアプリを作るためにAndroid Studioを使用しました。文字列からN番目の文字をすべて削除/削除

例:

N = 3、私はすべての三文字を削除する必要があり(それはCONSTではないが、入力から)

私はstackoverflowのをLOVE ----->I OV SACOVRFOW

私はhttps://stackoverflow.com/a/41813029メソッドを使用しました。なぜなら、トピックは似ているからです(そうでない場合)。

buttonprocess.setOnClickListener(new View.OnClickListener() { 
    @Override 
    public void onClick(View v) { 
     String s = edittextkata.getText().toString(); 
     String kunci = editkey.getText().toString(); 

     if (s.equals("")) { 
      Toast.makeText(getApplicationContext(), "CAN NOT ENCRYPT! Plaintext is empty.", Toast.LENGTH_SHORT).show(); 
     } else if (kunci.equals("")) { 
      Toast.makeText(getApplicationContext(), "CAN NOT ENCRYPT! KEY is empty", Toast.LENGTH_SHORT).show(); 
     } else { 
      int k = Integer.parseInt(editkey.getText().toString()); 
      String str = edittextkata.getText().toString(); 

      if (k < 1) { 
       throw new IllegalArgumentException("k must be greater than 0"); 
      } 
      StringBuilder result = new StringBuilder(); 

      int previous = 0; 
      for (int i = k - 1; i < str.length(); i += k) { 
       result.append(str, previous, i); 
       previous = i + 1; 
      } 
      result.append(str, previous, str.length()); 
      return result.toString(); 

      //Show the result to edittext 
      edittexthasil.setText(result); 
     } 

しかし、彼のコードは、エラー

エラーです:(66、43)エラー:互換性のない型:予期しない戻り値

実際に出力が

I OV SACOVRFOW & LETKELする必要があります

しかし、私のidk方法。そして、私は締め切りを叫ぶ。助けて!

nb:私の文法を赦してください。

+4

あなたは 'void'メソッドから値を返すことはできません。 – shmosel

+0

'return result.toString()'は何をしていると思いますか、なぜそう信じますか?これを考慮してください:1)メソッドは 'void'を返すと宣言されているので、何が返されていますか? 2) 'return'ステートメントの後に' edittexthasil.setText(result) 'ステートメントが続きます。そこに「戻る」声明文がどのように実行されますか? --- 'return'文を削除します。 – Andreas

+0

ああ私の神!どうもありがとうございます。今私はそれを考える。 。他のコードとコピストする前にもっと注意深くチェックしてください。そして、申し訳ありません、私はプログラミングの初心者です。 – Adara7

答えて

1

置き換えこれらの行:

return result.toString(); 

//Show the result to edittext 
edittexthasil.setText(result); 

と:

//Show the result to edittext 
edittexthasil.setText(result.toString()); 
+0

ありがとうございました〜その仕事は今 – Adara7

+0

あなたが助けてくれれば、この回答に合格とマークしてください。ありがとう。 – AhmedAbdelaal

関連する問題