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

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

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

 /**
* Aaron.ffp Inc.
* Copyright (c) 2004-2015 All Rights Reserved.
*/
package main.java.aaron.java.demo; /**
* Java学习-经典程序示例
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java, 2015-1-30 23:21:08 Exp $
*/
public class ClassicPrograms { /**
* 主方法入口
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java main, 2015-1-30 23:21:08 Exp $
*
* @param args
*/
public static void main(String[] args) {
int lay=6; /* 打印正金字塔-实心、空心 */
printPositivePyramid(lay); /* 打印倒金字塔-实心、空心 */
printInvertedPyramid(lay); /* 打印菱形 */
printDiamond(lay); /* 打印九九乘法表 */
print99MultiplicationTable();
} /**
* 经典循环控制-打印 99 乘法表
*
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java print99MultiplicationTable, 2015-1-30 23:48:56 Exp $
*
*/
public static void print99MultiplicationTable(){
int multiplier = 9; // 乘数表最大数 System.out.println("\n 输出 99 乘法表:"); for (int i = 1; i <= multiplier; i++) { // 乘数控制
/* 被乘数不大于乘数 */
for (int j = 1; j <= i; j++) { // 被乘数控制
System.out.print(i + " x " + j + " = " + (i * j) + "\t");
} System.out.println();
}
} /**
* 经典循环控制-打印正金字塔:实心、镂空
*
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printPositivePyramid, 2015-1-30 23:49:04 Exp $
*
* @param lay : 金字塔层数
*/
public static void printPositivePyramid(int lay){
/* 打印正金字塔 */
System.out.println("\n" + " 打印正金字塔"); for(int i=1;i<=lay;i++){
/* 空格规律:1->3 2->2 3->1 4->0, 提示:将金字塔以中线分开看左边的空格规律, 每层的空格个数为 lay-1 */
for(int k=0;k<=lay-i;k++){
System.out.print(" ");
} /* 星号规律:1->1 2->3 3->5 4->7, 提示:每层型号的个数为 2*lay-1 */
for(int j=1;j<= 2*i-1;j++){
System.out.print("*");
} System.out.println();
} /* 打印镂空金字塔 */
System.out.println("\n" + " 打印镂空金字塔:"); for(int i=1;i<=lay;i++){
/* 空格规律:1->3 2->2 3->1 4->0 */
for(int k=0;k<=lay-i;k++){
System.out.print(" ");
} /* 星号规律:1->1 2->3 3->5 4->7 */
for(int j=1;j<=(i-1)*2+1;j++){
/* 判断是否顶层或底层, 若是则打印型号, 否则打印空格 */
if(i==1||i==lay){
System.out.print("*");
} else {
if(j==1 || j==(i-1)*2+1){
System.out.print("*");
} else {
System.out.print(" ");
}
}
} System.out.println();
}
} /**
* 经典循环控制-打印倒金字塔:实心、镂空
*
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printInvertedPyramid, 2015-1-30 23:49:10 Exp $
*
* @param lay
*/
public static void printInvertedPyramid(int lay){
/* 打印倒金字塔 */
System.out.println("\n" + " 打印倒金字塔:"); for(int i=1; i<=lay; i++){
/* 空格规律:1->0 2->1 3->2 4->3 */
for(int k=1; k<=i; k++){
System.out.print(" ");
} /* 星号规律:1->7 2->5 3->3 4->1 */
for(int j=1; j<=(2*lay-1)-2*(i-1); j++){ // 总列数-2*空格数
System.out.print("*");
} System.out.println();
} /* 打印镂空倒金字塔 */
System.out.println("\n" + " 打印镂空倒金字塔:"); for(int i=1;i<=lay;i++){
/* 空格规律:1->0 2->1 3->2 4->3 */
for(int k=1;k<=i;k++){
System.out.print(" ");
} /* 星号规律:1->7 2->5 3->3 4->1 */
for(int j=1;j<=(2*lay-1)-2*(i-1);j++){
if(i==1||i==lay){
System.out.print("*");
}
else{
if(j==1 || j==(2*lay-1)-2*(i-1)){
System.out.print("*");
}else{
System.out.print(" ");
}
}
} System.out.println();
}
} /**
* 经典循环控制-打印菱形:实心、镂空
*
* @author Aaron.ffp
* @version V1.0.0: autoUISelenium main.java.aaron.java.demo ClassicPrograms.java printDiamond, 2015-1-30 23:49:15 Exp $
*
* @param lay
*/
public static void printDiamond(int lay){
/* 打印实心菱形 */
System.out.println("\n" + " 打印实心菱形:"); for(int i=0;i<2*lay-1;i++){
/* 空格规律:1->3 2->2 3->1 4->0 */
for(int k=0;k<Math.abs(i-(2*lay-1)/2);k++){
System.out.print(" ");
} /* 星号规律:1->1 2->3 3->5 4->7 */
for(int j=1;j<=2*lay-1-Math.abs(i-(2*lay-1)/2)*2;j++){
System.out.print("*");
} System.out.println();
} /* 打印镂空菱形 */
System.out.println("\n" + " 打印镂空菱形:"); for(int i=0;i<2*lay-1;i++){
/* 空格规律:1->3 2->2 3->1 4->0 */
for(int k=0;k<Math.abs(i-(2*lay-1)/2);k++){
System.out.print(" ");
} /* 星号规律:1->1 2->3 3->5 4->7 */
for(int j=1;j<=2*lay-1-Math.abs(i-(2*lay-1)/2)*2;j++){
if(i==0 || i==2*lay-2){
System.out.print("*");
} else {
if(j==1 || j==2*lay-1-Math.abs(i-(2*lay-1)/2)*2){
System.out.print("*");
}else{
System.out.print(" ");
}
}
} System.out.println();
}
}
}

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

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

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

Java学习-005-初学常用的几个经典循环控制源代码的更多相关文章

  1. Java学习中,常用的命令管理(Java 学习中的小记录)

    Java学习中,常用的命令管理      作者:王可利(Star·星星) 一.Window中常见的dos命令 在哪里操作dos命令: Win7 ---> 开始  ---->所有程序---& ...

  2. Java学习-007-Log4J 日志记录配置文件详解及实例源代码

    此文主要讲述在初学 Java 时,常用的 Log4J 日志记录配置文件详解及实例源代码整理.希望能对初学 Java 编程的亲们有所帮助.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:20 ...

  3. Java学习-009-文件名称及路径获取实例及源代码

    此文源码主要为应用 Java 获取文件名称及文件目录的源码及其测试源码.若有不足之处,敬请大神指正,不胜感激!源代码测试通过日期为:2015-2-3 00:02:27,请知悉. Java获取文件名称的 ...

  4. 【原】Java学习笔记031 - 常用类

    package cn.temptation; public class Sample01 { public static void main(String[] args) { /* * 类 Math: ...

  5. Java学习笔记七 常用API对象三

    一.泛型:简单说就是对对象类型进行限定的技术 public class GenericDemo { public static void main(String[] args){ /*泛型作为1.5版 ...

  6. Java学习笔记六 常用API对象二

    1.基本数据类型对象包装类:见下图 public class Test { public static void main(String[] args){ Demo(); toStringDemo() ...

  7. Java学习笔记五 常用API对象一

    常用API:字符串操作:String类,StringBuffer类,StringBulider类 字符串是最重要的数据类型之一,处理字符串也是一种语言的基本工作. 1.String类: public ...

  8. Java学习笔记——字符串常用函数

    class JavaTest4_String { public static void main(String[] args) { String str1 = "IOS,ANDROID,BB ...

  9. java学习之三种常用设计模式

    一.适配器设计模式 简单来说,就是通过一个间接类来选择性的来覆写一个接口 interface Window{ public void open() ; // 打开窗口 public void clos ...

随机推荐

  1. android怎样调用@hide和internal API

    android怎样调用@hide和internal API 2012-12-11 16:21 8772人阅读 评论(3) 收藏 举报  分类: Android开发(277)  Android有两种类型 ...

  2. iOS移动开发周报-第21期

    iOS移动开发周报-第21期 [摘要]:本期iOS移动开发周报带来如下内容:苹果iCloud中国数据转存中国电信,Swift Operators,100 个 Swift 必备 tips,FLEXLoa ...

  3. IplImage 与 QImage 相互转换

    在使用Qt和OpenCV编程时,对于它们各自的图像类QImage和IplImage难以避免的需要互相之间的转换,下面我们就来看它们的相互转换. 1. QImage 转换为 IplImage IplIm ...

  4. 星外虚拟主机跨web目录文件读取漏洞

    星外虚拟主机跨目录读取文件漏洞,需要一定条件. 问题发生在以下文件,这些文件都没有严格的设置执行权限,当前的IIS用户能够顺利的利用它们执行命令: c:\windows\7i24IISLOG.exe ...

  5. mysql外键实战

    一.基本概念 1.MySQL中“键”和“索引”的定义相同,所以外键和主键一样也是索引的一种.不同的是MySQL会自动为所有表的主键进行索引,但是外键字段必须由用户 进行明确的索引.用于外键关系的字段必 ...

  6. Solr学习笔记之3、Solr dataimport - 从SQLServer导入数据建立索引

    Solr学习笔记之3.Solr导入SQLServer数据建立索引 一.下载MSSQLServer的JDBC驱动 下载:Microsoft JDBC Driver 4.0 for SQL Server ...

  7. jQuery 找到当前元素之前最后一次出现的某个同辈元素

    DOM 树状图如下所示,要找到 div id = 'a' 的元素之前的(同辈)离该 div 最近的一个 div class = 'a' 的元素(图中左至右第 2 个 div class = 'a' 的 ...

  8. cURL 学习笔记与总结(4)使用 cURL 从 ftp 上下载文件与上传文件到 ftp

    下载: <?php $curlobj = curl_init(); curl_setopt($curlobj, CURLOPT_URL, "ftp://192.***.*.***/文件 ...

  9. mobile cpu上禁用alpha test的相关总结

       因为,每家芯片的特性不同,根据向framebuffer写法的不同,分为tile-based的mobile cpu,如ImgTec PowerVR,ARM Mali,一部分老版本Qualcomm  ...

  10. 关于Shader的跨平台方案的考虑

      Apple 推出 metal后,除了新的metal framewrok外,也多了一种新的shader语言,最近工作也做了一些metal移植的测试,主要还是现有引擎如何可以快速支持metal的解决方 ...