カテゴリ

製品ページスタート

ノウハウ

Feed

ノウハウ

文のネスト

今回はfor文をネストします。

(2008/10/20 23:38)

Comments_count コメントする (4) Clips_count クリップする (1) Access_count アクセス数 (601)

本文
何時も、超初心者コードばかりを書いて
説明とか余り無くてすみません><
コピペする ブログに貼る
class Sample3
{
	public static void main(String args[])
	{
		for(int i=0; i<5; i++){
			for(int j=0; j<3; j++){
				System.out.println("iは" + i + ":jは" + j);
			}
		}
	}
}
このコードは、変数1をインクリメントするfor文の中に、 変数jをインクリメントするfor文を埋め込んでます。 こんな感じで文をネストすると結構複雑な処理も書けそうですね。
  • No_photo_thumbnail
    by moppo ( アクセス数:821, 投稿数:100, マイクリップ数:4 ) |投稿時間:2008/10/21 00:39
    トリッキーですがforを使わないでやってみました
    
    コピペする ブログに貼る
    class Sample3
    {
            private static final int I_END = 5;
            private static final int J_END = 3;
            public static void main(String args[]){
                    function(0,0);
            }
            private static void function(int i , int j){
                    System.out.println("iは" + i + ":jは" + j);
                    if( j == J_END - 1 && i == I_END - 1){
                            return;
                    }
                    if( j == J_END - 1 && i != I_END - 1){
                            function(i + 1 , 0 );
                    }else{
                            function(i     ,j+1);
                    }
            }
    }
    >>natoiさん こういうの好きです 気にせずじゃんじゃん投稿してください!
    このコメントの獲得ポイント2点(2人の評価)
  • Thumbnail
    by fujiyoshisyouta ( アクセス数:3585, 投稿数:332, マイクリップ数:92 ) |投稿時間:2008/10/21 11:50
     ちょっと、関数型言語っぽくできるかな、とか考えて書き直してみました。
    
    コピペする ブログに貼る
    class Sample3
    {
        public static void main(String args[])
        {
            intI(0);
        }
    
        private static void intI( int i)
        {
            if(i<3)
            {
                intJ(i,0);
            }
        }
    
        private static void intJ( int i, int j)
        {
            if(j<5)
            {
                System.out.println("iは" + i + ":jは" + j);
                intJ(i,j+1);
            }else
            {
                intI(i+1);
            }
        }
    }
     いかがでしょうか?
    このコメントの獲得ポイント1点(1人の評価)
  • No_photo_thumbnail
    by moppo ( アクセス数:821, 投稿数:100, マイクリップ数:4 ) |投稿時間:2008/10/21 13:36
    >> fujiyoshisyoutaさん
    カッコいいですねstar
    しかし 再帰て難しいですよね
    もっとエレガントに書きたい
    
    このコメントの獲得ポイント0点(0人の評価)
  • Thumbnail
    by fujiyoshisyouta ( アクセス数:3585, 投稿数:332, マイクリップ数:92 ) |投稿時間:2008/10/21 14:05
    >moppoさん
     ありがとうございますsmile
    
    
    
     しかし、私の書いたコードは、かなりスタックが深くなってますので、実行効率は相当悪いはずです。
     じっさい、上記コードをちょっといじくって関数呼び出しの数を計算してみたところ、Main()を含めて23と出ました。
    
    このコメントの獲得ポイント0点(0人の評価)

カタログ

Eclipse
NetBeans
JBuilder
JDeveloper
Xcode
MonoDevelop
IntelliJ IDEA
JCODER
JCreator
KDevelop
Greenfoot
Qt Creator
Rational
Servoy
Sun Studio
Geany
DrJava
Codelite
BlueJ
BEA Workshop for WebLogic
okyuu.comとは

価格.comID(メールアドレス)

パスワード

次回から入力を省略
Okyuu_on_facebook
Okyuu_on_twitter
Okyuu_vox_com

新着記事

ノウハウ