アプリ版:「スタンプのみでお礼する」機能のリリースについて

コマンドライン引数で入力された文字列が
 3文字以下なら、その文字列を20個、文字列連結して表示し、
 4文字以上なら"たくさん"を表示しなさい
・文字列連結の際はStringBufferクラスを使用しなさい
・for分を使用しなさい
*Javaのインデックス・配列はゼロからです

という問いがあった場合ソースはどのように記述すればいいのでしょうか?
なにぶん初心者なもので・・・。
どなたか親切な方、教えてもらえないでしょうか?

A 回答 (4件)

完全回答はためにならないので部分部分のやり方だけ載せます。



★if文
→条件Xが真のときは処理Aを
 条件Yが真のときは処理Bを
 XもYも偽のときは処理Cを

if(条件X){
    処理A
}
else if(条件△△){
    処理B
}
else{
    処理C
}

★StringBufferを使った単純文字列連結
→○○というString型文字列をsbに頭から追加。
StringBuffer sb = new StringBuffer();
sb.insert(0,○○);

→sbの内容表示
System.out.println(sb.toString());

これくらい示しておけば、あとはウマく組み合わせればできるでしょう。
    • good
    • 0

>コマンドライン引数で入力された文字列が


コマンドライン引数の文字列を見ます。やり方わかりますか?変数に代入した方が処理しやすいかな?
できれば、コマンドラインに文字列がない場合の処理も書けばよりベター。
>3文字以下なら
きっとif文で場合分けすることになりますね。文字列の長さを調べる方法は分かりますか?
>その文字列を20個、文字列連結して表示し、
20個やるということでfor文はたぶん自然に使うことになるでしょう。
連結するときにStringBufferを使う方法は分かりますか?
結果の表示の方法は分かりますか?

>4文字以上なら"たくさん"を表示しなさい
こっちの場合はかなり簡単ですね。

問題の丸投げは良くないです。取りあえず、自分で考えてできるところまでやってみてから、それでも分からないところを質問しましょう。

この回答への補足

>問題の丸投げは良くないです。取りあえず、自分で考えてできるところまでやってみてから、それでも分からないところを質問しましょう。

ご指摘ごもっともです。すみませんでした

public class Sample
{
public static void main(String[] args)
{
// 変数の宣言
String s = args[0];
int i = s.length();

if(i < 4)
{
System.out.println("すくない");
}
else
{
System.out.println("たくさん");
}
}
}
ここまでは出来たというかやってみたのですが、もちろんこれでは文字列が4文字以上の時のみ(たくさん)と表示され、3文字以下のときは(すくない)と表示されるだけです
for文を使って繰り返し処理を行うのだろうというのはわかるのですが具体的なサンプルソースなどが自分では見つけられずにいたのです
数値の繰り返しの場合は多くサンプルがあったのですが文字列連結して繰り返しというのは発見できず・・・

補足日時:2009/01/04 12:28
    • good
    • 0

まずは、このページをブックマークしましょう↓


http://java.sun.com/javase/ja/6/docs/ja/api/inde …
APIといってStringBufferなどJavaに元からそなわった機能の一覧が載っています
ついでに、StringBufferはjava.langの下位層にあります

>ソースはどのように記述すればいいのでしょうか?
この問題は基本ですし、なんのひねりもありませんのでご自分で解決するべきでしょう
最初はわからなくても、諦めずに考えればわかるようになりますので、頑張ってくださいね
    • good
    • 0
この回答へのお礼

教えていただいたページを参照して自分で考えてみます
ありがとうございました

お礼日時:2009/01/03 22:13

>という問いがあった場合ソースはどのように記述すればいいのでしょうか?


あなたが今読んでいる参考書に参考となるソースが書かれているでしょう。
それに沿って記述して下さい。

>なにぶん初心者なもので・・・。
「初心者」にもイロイロあるわな。
あなたは最悪の部類ですよ。
    • good
    • 0
この回答へのお礼

ご指摘、耳が痛いです
自分で考えて頑張ってみます
ありがとうございました

お礼日時:2009/01/03 22:15

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!