• ベストアンサー

疑問文の作り方

最近javaプログラミングを始めたばかりの初心者です。 つまらない質問で恐縮ですが、よろしくお願い致します。 文字列処理の方法でつまずいてしまいました。 「java Sample55 This is a pen.」 と入力すると「Is this a pen?」と疑問文になるプログラムを作りたいのですが、どうしてもうまくいきません。 どうすればできるのでしょうか? わからないところのポイントは以下の3点です。 1.最初の2つの単語の語順を入れ替えるところ。 2.小文字←→大文字を変換するところ。 3.最後のピリオドを疑問符にするところ。 以上、よろしくお願い致します。

質問者が選んだベストアンサー

  • ベストアンサー
  • BLUEPIXY
  • ベストアンサー率50% (3003/5914)
回答No.2

同じく初心者なのですが、色々やり方はあると思いますが、1つの方法 public class Sample55 { public static void main(String argv[]){ String[] wk = argv.clone();//コピーをつくる wk[0]=argv[1].substring(0,1).toUpperCase()+argv[1].substring(1);//先頭の文字を大文字にする wk[1]=argv[0].toLowerCase();//小文字に変換 wk[wk.length-1]=wk[wk.length-1].replace('.','?');//ピリオドを疑問符にする for(String aStr : wk)//文字列配列の表示 System.out.print(aStr +" "); } }

freecat
質問者

お礼

ご回答いただき、ありがとうございます。今後ともよろしくお願い致します。具体的なソースコードを書いていただき、たいへん参考になりました。プログラミングを始めたばかりで毎日悪戦苦闘しております。また何かありましたら、よろしくお願いします。

その他の回答 (1)

  • elder2
  • ベストアンサー率50% (3/6)
回答No.1

単純に条件を満たすだけなら…、 1. StringBufferを使ってargs[1],args[0]の順に  追加する。(もちろん残りも) 2. args[1]の0番目をCharacter#toUpperCaseで大文字に変換し、 args[0]の0番目をCharacter#toLowerCase小文字に変換する。 3. StringBufferにすべて追加した後、  StringBuffer#replace()を使って、最後の文字を?に変換する。

freecat
質問者

お礼

ご回答いただき、ありがとうございます。今後ともよろしくお願い致します。とても参考になりました。なんとか解決できそうです。

関連するQ&A