Java学习-005-初学常用的几个经典循环控制源代码

最近一段时间公司 App 改版,一直处在需求评审、代码评审、测试计划、测试用例、用例评审、用例执行、缺陷管理、测试总结的循环中,因而博客也好久没有更新了。虽然工作确实忙了点,但是也是自己懒惰了,从今天开始陆续整理之前学习 Java 时写的 Java 程序,并记录在博客中,供自己查阅,也希望能给初学 Java 的亲们一份参考,希望能对初学 Java 编程的亲们有所帮助。若有不足之处,敬请大神指正,不胜感激!

此文主要讲述在初学 Java 时,常用的几个经典的循环控制程序的源码整理。源代码测试通过日期为:2015-1-30 23:49:15,请知悉。

以下为初学 Java 常用的几个经典循环控制源代码,敬请参阅!

 

  1 /**

  2  * Aaron.ffp Inc.

  3  * Copyright (c) 2004-2015 All Rights Reserved.

  4  */

  5 package main.java.aaron.java.demo;

  6 

  7 /**

  8  * Java学习-经典程序示例

  9  * @author Aaron.ffp

 10  * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java, 2015-1-30 23:21:08 Exp $

 11  */

 12 public class ClassicPrograms {

 13 

 14     /**

 15      * 主方法入口

 16      * @author Aaron.ffp

 17      * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java main, 2015-1-30 23:21:08 Exp $

 18      * 

 19      * @param args

 20      */

 21     public static void main(String[] args) {

 22         int lay=6;

 23         

 24         /* 打印正金字塔-实心、空心 */

 25         printPositivePyramid(lay);

 26         

 27         /* 打印倒金字塔-实心、空心 */

 28         printInvertedPyramid(lay);

 29         

 30         /* 打印菱形 */

 31         printDiamond(lay);

 32         

 33         /* 打印九九乘法表 */

 34         print99MultiplicationTable();

 35     }

 36     

 37     /**

 38      * 经典循环控制-打印 99 乘法表

 39      * 

 40      * @author Aaron.ffp

 41      * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java print99MultiplicationTable, 2015-1-30 23:48:56 Exp $

 42      *

 43      */

 44     public static void print99MultiplicationTable(){

 45         int multiplier   = 9; // 乘数表最大数

 46         

 47         System.out.println("\n 输出 99 乘法表:");

 48         

 49         for (int i = 1; i <= multiplier; i++) { // 乘数控制

 50             /* 被乘数不大于乘数 */

 51             for (int j = 1; j <= i; j++) {      // 被乘数控制

 52                 System.out.print(i + " x " + j + " = " + (i * j) + "\t");

 53             }

 54             

 55             System.out.println();

 56         }

 57     }

 58     

 59     /**

 60      * 经典循环控制-打印正金字塔:实心、镂空

 61      * 

 62      * @author Aaron.ffp

 63      * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printPositivePyramid, 2015-1-30 23:49:04 Exp $

 64      * 

 65      * @param lay : 金字塔层数

 66      */

 67     public static void printPositivePyramid(int lay){

 68         /* 打印正金字塔 */

 69         System.out.println("\n" + " 打印正金字塔");

 70         

 71         for(int i=1;i<=lay;i++){

 72             /* 空格规律:1->3  2->2 3->1 4->0, 提示:将金字塔以中线分开看左边的空格规律, 每层的空格个数为 lay-1 */

 73             for(int k=0;k<=lay-i;k++){

 74                 System.out.print(" ");

 75             }

 76             

 77             /* 星号规律:1->1 2->3 3->5 4->7, 提示:每层型号的个数为 2*lay-1 */

 78             for(int j=1;j<= 2*i-1;j++){

 79                 System.out.print("*");

 80             }

 81             

 82             System.out.println();

 83         }

 84         

 85         /* 打印镂空金字塔 */

 86         System.out.println("\n" + " 打印镂空金字塔:");

 87         

 88         for(int i=1;i<=lay;i++){

 89             /* 空格规律:1->3  2->2 3->1 4->0 */

 90             for(int k=0;k<=lay-i;k++){

 91                 System.out.print(" ");

 92             }

 93             

 94             /* 星号规律:1->1 2->3 3->5 4->7 */

 95             for(int j=1;j<=(i-1)*2+1;j++){

 96                 /* 判断是否顶层或底层, 若是则打印型号, 否则打印空格 */

 97                 if(i==1||i==lay){

 98                     System.out.print("*");

 99                 } else {

100                     if(j==1 || j==(i-1)*2+1){

101                         System.out.print("*");

102                     } else {

103                         System.out.print(" ");

104                     }

105                 }

106             }

107             

108             System.out.println();

109         }

110     }

111     

112     /**

113      * 经典循环控制-打印倒金字塔:实心、镂空

114      * 

115      * @author Aaron.ffp

116      * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printInvertedPyramid, 2015-1-30 23:49:10 Exp $

117      * 

118      * @param lay

119      */

120     public static void printInvertedPyramid(int lay){

121         /* 打印倒金字塔 */

122         System.out.println("\n" + " 打印倒金字塔:");

123         

124         for(int i=1; i<=lay; i++){

125             /* 空格规律:1->0  2->1 3->2 4->3 */

126             for(int k=1; k<=i; k++){

127                 System.out.print(" ");

128             }

129             

130             /* 星号规律:1->7 2->5 3->3 4->1 */

131             for(int j=1; j<=(2*lay-1)-2*(i-1); j++){ // 总列数-2*空格数

132                 System.out.print("*");

133             }

134             

135             System.out.println();

136         }

137         

138         /* 打印镂空倒金字塔 */

139         System.out.println("\n" + " 打印镂空倒金字塔:");

140         

141         for(int i=1;i<=lay;i++){

142             /* 空格规律:1->0  2->1 3->2 4->3 */

143             for(int k=1;k<=i;k++){

144                 System.out.print(" ");

145             }

146             

147             /* 星号规律:1->7 2->5 3->3 4->1 */

148             for(int j=1;j<=(2*lay-1)-2*(i-1);j++){

149                 if(i==1||i==lay){

150                     System.out.print("*");

151                 }

152                 else{

153                     if(j==1 || j==(2*lay-1)-2*(i-1)){

154                         System.out.print("*");

155                     }else{

156                         System.out.print(" ");

157                     }

158                 }

159             }

160             

161             System.out.println();

162         }

163     }

164     

165     /**

166      * 经典循环控制-打印菱形:实心、镂空

167      * 

168      * @author Aaron.ffp

169      * @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printDiamond, 2015-1-30 23:49:15 Exp $

170      * 

171      * @param lay

172      */

173     public static void printDiamond(int lay){

174         /* 打印实心菱形 */

175         System.out.println("\n" + " 打印实心菱形:");

176         

177         for(int i=0;i<2*lay-1;i++){

178             /* 空格规律:1->3  2->2 3->1 4->0 */

179             for(int k=0;k<Math.abs(i-(2*lay-1)/2);k++){

180                 System.out.print(" ");

181             }

182             

183             /* 星号规律:1->1 2->3 3->5 4->7 */

184             for(int j=1;j<=2*lay-1-Math.abs(i-(2*lay-1)/2)*2;j++){

185                 System.out.print("*");

186             }

187             

188             System.out.println();

189         }

190         

191         /* 打印镂空菱形 */

192         System.out.println("\n" + " 打印镂空菱形:");

193         

194         for(int i=0;i<2*lay-1;i++){

195             /* 空格规律:1->3  2->2 3->1 4->0 */

196             for(int k=0;k<Math.abs(i-(2*lay-1)/2);k++){

197                 System.out.print(" ");

198             }

199             

200             /* 星号规律:1->1 2->3 3->5 4->7 */

201             for(int j=1;j<=2*lay-1-Math.abs(i-(2*lay-1)/2)*2;j++){

202                 if(i==0 || i==2*lay-2){

203                     System.out.print("*");

204                 } else {

205                     if(j==1 || j==2*lay-1-Math.abs(i-(2*lay-1)/2)*2){

206                         System.out.print("*");

207                     }else{

208                         System.out.print(" ");

209                     }

210                 }

211             }

212             

213             System.out.println();

214         }

215     }

216 }
Java 初学重用的几个经典循环控制源代码

 

 

 

至此, Java学习-005-初学常用的几个经典循环控制源代码 顺利完结,希望此文能够给初学 Java 的您一份参考。

 

最后,非常感谢亲的驻足,希望此文能对亲有所帮助。热烈欢迎亲一起探讨,共同进步。非常感谢! ^_^

 

 

你可能感兴趣的:(Java学习)