Java-switch的用法(5)

一、基本的结构

switch(条件){
    case 常量1:
       //代码块
       break;
    case 常量2:
      //代码块
       break;
    default:
      //默认执行

}

题目:给成绩划分等级 60~70 及格 ,70~80中等,60及格,60以下不及格

public static void main(String[] args) {
        
        System.out.println("请输成绩:");
        Scanner reda =new Scanner(System.in);
        float num =reda.nextFloat();
        int num1=(int)num;
        switch(num1/10){
            case 10:
            case 9: 
            System.out.print("优秀");
            break;
            case 8:
            case 7:
            System.out.print("中等"); 
            break;
            case 6:
            System.out.print("及格");     
            break;
            default:
            System.out.print("不及格");        
            break;
        }
  • switch的注意点:
    case后面只能接常量(不能是字符串):case 常量:
    switch(条件)这个条件运算出来的结果只能int型或者char类型
    一般记得加上break;
    case后面的常量不能是相同
    default只能放在最后面

如果是jdk是1.6及1.6之前的版本
在Java中switch的常量只能是int,cahr,byte
在java jdk版本1.7或者是1.7版本以上string类型的常量也是可以的。

二、whlie循环

  • 基本的结构
  while(条件){
  //循环体
}

执行过程 当条件成立(运算的结果是非0的正整数或是boolean类型的true),就执行循环体
注:while循环我们一般是把控制循环的变量放在循环体种

题目:用while循环写一个死循环

int num=2;
whlie(num>1){
    
}

三、do-whlie

  • 基本结构:
do {
        //循环体
    } while (条件);
}

while循环的区别:do-while始终都要执行一次循环,while只有当条件成立的时候才会执行,其他的基本一致

四、怎么使用

  • 基本上能用switch解决的我们都可以用结果来解决。使用switch的时候会是规律明显(比如是给成绩排名的例子),产生有限的运算结果可以匹配。

  • 使用whiledo-while的时候,需要注意执行的次数,如果第一次需要进入循环体就用do-while合适。

五、随机数

Random  ran=new  Random();
int  num = run.nextInt(n);

产生的随机数就是在0~n-1之间
是使用 java.iutl.Randon的java自带包

如果要产生java,util.Random的java自带包
如果要产生n~m之间的随机数,
int num=ran.nextInt(m-n+1) + n;

比如我们要产生5 ~ 10之间的随机数,nextInt(5),产生的是0~4的随机数,
所以我们产生0 ~ 5之间的随机数再加上5,的到5 ~ 10之间的随机数,使用我们应该用
nextInt(6)+5,得到5~10之间的随机数。

例子:

Random ran=new Random();
int num=ran.nextInt(3);
System.out.println("请您出拳");
Scanner read=new Scanner(System.in);
int num2=read.nextInt();
if((num2==0&&num==1)||(num2==1&&num==2)||(num2==2&&num==0)){
System.out.println("赢了,"
        + "电脑出的是"+
(num==0?"石头":(num==1?"剪刀":"布"))
         +"你出的是"+
(num2==0?"石头":(num2==1?"剪刀":"布")));
}else if((num2==1&&num==2)||(num2==0&&num==2)||(num2==2&&num==1)){
System.out.println("你出的是"+ 
     (num2==0?"石头":(num2==1?"剪刀":"布"))
          + "电脑出的"  +
    (num==0?"石头":(num==1?"剪刀":"布"))+"结果平了"
          + "赢了");
}else if(num2==num){
System.out.println("你出的是"+
     (num2==0?"石头":(num2==1?"剪刀":"布"))+
                       "电脑出的是"+
     (num==0?"石头":(num==1?"剪刀":"布"))+
                      "结果平了");
}

作业:

public static void main(String[] args) {
        
//      由电脑随机生成(1-10)一个数字,然后由你输入,
//      如果输入的数字比随机数字大,则提示你输入的数字太大
//      ,否则,输入太小,当输入的数字等于随机的生成的数字时,
//      就打印恭喜你,猜对了
        Random  ran=new  Random();
        int num=ran.nextInt(10-1+1) + 1;
        System.out.println("请输入一个数:");
        Scanner rede=new Scanner(System.in);
        int num1=rede.nextInt();
        if (num1>num) {
            System.out.println("数字太大随机数是"+num);
        }else if (num1<num) {
            System.out.println("数字太小随机数是"+num);
        }else if (num1==num) {
            System.out.println("猜对了随机数"+num);
        }
        
        }

}

运行效果:

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 顺序语句 语句:使用分号分隔的代码称作为一个语句。 注意:没有写任何代码只是一个分号的时候,也是一条语句,...
    哈哈哎呦喂阅读 3,030评论 0 0
  • 深夜里的宿舍,洗衣房里的水滴落在洗漱台上滴答、滴答作响。闭上眼仔细聆听了一下,却又听到自己的心跳声,顿时感觉五...
    拾万嘻皮阅读 3,388评论 0 1
  • 如同其他多数教程一样,我们先来“Hello world!” 1.选择【Create a new Xcode pro...
    子璇o阅读 5,323评论 5 2
  • 开心, 还想着你周五打电话给我时的低落心情,妈妈要怎么和你沟通…周六和你电话时早已烟消云散,晚上回到家时,你和爸爸...
    蔡敏_Michelle阅读 1,020评论 0 0
  • 最近开始坚持写作日更后,我渐渐发现了自己的写作风格。我比较喜欢写散文,很感谢简书这个平台。不仅可以发表我的作品,还...
    单晴阅读 1,339评论 1 5