码迷,mamicode.com
首页 > 编程语言 > 详细

JAVA 蹒跚自学之 第五日 语句

时间:2015-05-21 22:23:02      阅读:306      评论:0      收藏:0      [点我收藏+]

标签:

判断结构

if(条件表达式){执行语句}  一层判断

    条件表达式的 结果为 true 的时候 就执行后面大括号里面的语句  ,结果为false的时候 就不执行后面大括号里面的语句,而是跳过 。例如   int x =9;

              if(x>3){System.out.println(“执行”);}

技术分享 

技术分享 

int x =2;

              if(x>3){System.out.println(“执行”);} 表达式结果为false  跳过后面的代码而向下继续执行

技术分享 技术分享

if(条件表达式){执行代码1} else{执行代码2}

   如果条件表达式里面的结果为true  则执行 代码1运行。如果结果为false 执行代码2 运行。

          二层判断

class  IfDemo
{
    public static void main(String[] args)
    {
            int x = 8;
            if (x>9)
            {
                System.out.println("hello 1");
            } else
                {
                 System.out.println("hello 2");
            }
    }
}

 

if(条件表达式){执行代码1} elseif(条件表达式2){执行代码2} else if (条件表达式3){执行代码3}…………………….else {}   多层判断

class  IfDemo
{
    public static void main(String[] args)
    {
            int x = 8;
            if (x>9)
            {
                System.out.println("hello 1");
            } else if (x>7)
                {
                 System.out.println("hello 2");
                 }  else if(x>3)

        {
                      System.out.println("hello 3");
        } else

                            {System.out.println("over");}
        }
}

多层判断 只要满足其中任何一个条件 就会自动执行后面的代码 然后结束整条语句

选择结构             switch

格式       

switch (参与选择的值 )   //里面的值 只能是byte  short  int  char  四种类型的
        {
           case 1:
               代码1;
           break;

           case 2:
              代码2;
           break;

            case 3:
              代码3;
           break;
            case 4:
              代码4;
           break;

           ..........................................
            case n:
              代码n;
           break;

            default:
                代码;
            break;

        }

实例: 根据给出的月份值 来判断是属于哪个季节

思考: 一年只有12个月  3,4,5 春季   6,7,8 夏季 9,10,11 秋季  12,1,2 冬季  

         有具体的值 而且数量不多 并且数值 属于byte 类型数据,所以我们选择switch选择结构的语句来完成

       

class SwitchDemo
{
    public static void main(String[] args)
    {
        byte x = 2;
        switch(x)
        {
            case 3:
                System.out.println("这是春季哦");
            break;

            case 4:
                System.out.println("这是春季哦");
            break;
            case 5:
                System.out.println("这是春季哦");
            break;

            case 6:
                System.out.println("这是夏季哦");
            break;

            case 7:
                System.out.println("这是夏季哦");
            break;
            case 8:
                System.out.println("这是夏季哦");
            break;

            case 9:
                System.out.println("这是秋季哦");
            break;

            case 10:
                System.out.println("这是秋季哦");
            break;
            case 11:
                System.out.println("这是秋季哦");
            break;

            case 12:
                System.out.println("这是冬季哦");
            break;

            case 2:
                System.out.println("这是冬季哦");
            break;
            case 1:
                System.out.println("这是冬季哦");
            break;

            default:
                System.out.println("输入的数值错误,没有对应月份儿存在");
            break;
        }
    }

}

如果switch 里面有相同的执行代码  而只是对比选择的值不同,那么可以将 相同代码的选择值合并也就是去掉那些break

class SwitchDemo
{
    public static void main(String[] args)
    {
        byte x = 2;
        switch(x)
        {
            case 3:
            case 4:
            case 5:
                System.out.println("这是春季哦");
            break;

            case 6:
            case 7:
            case 8:
                System.out.println("这是夏季哦");
            break;

            case 9:
            case 10:
            case 11:
                System.out.println("这是秋季哦");
            break;

            case 12:
            case 2:
            case 1:
                System.out.println("这是冬季哦");
            break;

            default:
                System.out.println("输入的数值错误,没有对应月份儿存在");
            break;
        }
    }

循环语句   while   

格式

初始化表达式   

  while (条件表达式){执行语句}

class  WhileDemo
{
    public static void main(String[] args)
    {
        byte x = 9;
        while (x<20)
        {
            System.out.println("Hello World!"+"x ="+x);
            x++;
        }
    }
}

技术分享

循环语句   for

技术分享   

class  WhileDemo
{
    public static void main(String[] args)
    {
               for (byte y =9;y<20 ;y++ )
        {
            System.out.println("Hello World!"+"y ="+y);
        }
    }
}

技术分享

while 与for 两种循环体的区别    两种循环体可以想好转换   while 初始化变量是在循环体的外面   循环结束后 内存中还是贮存着 那个变量   for 循环控制循环体增量的变量 的作用域是在for的里面,循环结束后 变量也就随之释放了。相对来说节省一点点内存,如果循环体结束后,后续程序还是需要应用那个变量就使用WHILE  ,如果那个控制循环体的变量只是单纯的控制循环那么就使用for。

计数器思想

       将 1-100之间的9的整倍数的数的个数 打印到控制台

分析:9的整数倍的数的特点      /9后余数为0     if(X/9==0)  如果里面的表达式结果为true了 那么X  就是9的整数倍的数  

       从1-100里面找出 所有满足条件的数  需要 一个一个的去利用上面的方法去 找也就是重复上面的动作100次  所以要用循环体去做  。        for(byte x=1;x<=100;x++)

                       {

                                    if(x/9==0);

                        }

           既然符合要求的数挑出来了,我们只是需要看看 总共有多少个而已  ,所以每次挑出来之后计数就好。定义一个变量count 来计数

                     for(byte x=1;x<=100;x++)

                       {

                                    if(x/9==0);

                                        count++;

                        }

技术分享

技术分享

For嵌套

  以*号打印一个长方形 

 

class ForforTest
{
    public static void main(String[] args)
    {
        for (byte x=0;x<4 ;x++ )
        {
            for (byte y=0;y<6 ;y++ )
            {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

 

运行结果                  技术分享

 

分析: 

for (byte y=0;y<6 ;y++ )
            {
                System.out.print("*");
            }
内层的for循环 控制列的变化  也就是每行中的星星的个数

外层的for 循环控制行的变化  也就是打印几行星星

 

变化 1   打印一个尖儿向下的星星

class ForforTest
{
    public static void main(String[] args)
    {
        for (byte x=0;x<4 ;x++ )
        {
            for (byte y=x;y<4 ;y++ )
            {
                System.out.print("*");
            }
            System.out.println();
        }
    }
}

技术分享

 

 

分析  :打印几行星星没有变化还是那几行,所以 外层的for 不用变化  ,只变化内层就可以

JAVA 蹒跚自学之 第五日 语句

标签:

原文地址:http://www.cnblogs.com/gailuo/p/4520704.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!