• 每日总结


    动手动脑第一题:

    代码如下

    复制代码
    package helloworld;
    
    public class EnumTest {
    
        public static void main(String[] args) {
            Size s=Size.SMALL;
            Size t=Size.LARGE;
            //s和t引用同一个对象?
            System.out.println(s==t);  //
            //是原始数据类型吗?
            System.out.println(s.getClass().isPrimitive());
            //从字符串中转换
            Size u=Size.valueOf("SMALL");
            System.out.println(s==u);  //true
            //列出它的所有值
            for(Size value:Size.values()){
                System.out.println(value);
            }
        }
    
    }
     enum Size{SMALL,MEDIUM,LARGE};
    复制代码

    运行结果如下

    这代表enum枚举不是基本类型,不同的值也不是属于同一个对象。可以通过字符串的转换使得变量相等。

    动手动脑第二题

    代码如下

    复制代码
    public class TestDouble {
    
        public static void main(String args[]) {
            System.out.println("0.05 + 0.01 = " + (0.05 + 0.01));
            System.out.println("1.0 - 0.42 = " + (1.0 - 0.42));
            System.out.println("4.015 * 100 = " + (4.015 * 100));
            System.out.println("123.3 / 100 = " + (123.3 / 100));
        }
    }
    复制代码

    运行结果如下

    可以看出高位浮点数的计算基本上都是不精确的。

    动手动脑第三题

            int X=100;
            int Y=200;
            System.out.println("X+Y="+X+Y);
            System.out.println(X+Y+"=X+Y");

    运行如此的代码,结果如下

     可以看出,在第一个输出语句中,+X+Y这部分被系统解释为直接与之前的字符串"X+Y"相连接;第二个输出语句中则被解释为先加成一个数再与字符串相连接,是一种自动的类型转换

    为避免歧义,需要将第一个输出语句中的+X+Y写成+(X+Y)

    课堂测试

    一个能自动生成各类四则运算的小程序,可自定义数量和输出算式的种类

    复制代码
    package test;
    import java.util.Scanner;
    import java.util.Random;
    
    public class Class10 {
        public static void main(String[] args) {
            int fi,se;
            int end=0,choice,pro=30,choiceb=1;
            Scanner in=new Scanner(System.in);
            System.out.println("请输入要输出的式子数目");
            pro=in.nextInt();
            System.out.println("是否需要乘除法 1 需要/2 不要");
            choiceb=in.nextInt();
            Random random = new Random();
            for(int i=0;i<pro;i++)
            {
               fi=((random.nextInt(9)+1)*10+random.nextInt(9));
               se=((random.nextInt(9)+1)*10+random.nextInt(9));
                   fi=(random.nextInt(9)+1)*10+random.nextInt(9);
                   se=(random.nextInt(9)+1)*10+random.nextInt(9);
               if(choiceb==2)
               {
                   choice=random.nextInt(1);
               }
               else
               {choice=random.nextInt(3);}
               System.out.println("第"+(i+1)+"道题目");
               switch(choice)
               {
                  case 0:
                      end=fi+se;
                      System.out.println(fi+"+"+se+"="+end);
                      break;
                  case 1:
                      end=fi-se;
                      System.out.println(fi+"-"+se+"="+end);
                      break;
                  case 2:
                      end=fi*se;
                      System.out.println(fi+"x"+se+"="+end);
                      break;
                  case 3:
                      end=fi/se;
                      System.out.println(fi+"/"+se+"="+end);
                      break;
               }
               
            }
        }
    
    }
    复制代码

    运行结果:

     之后就卡住不动了,同时电脑的风扇发出了我至今都没听过的巨大声响,这让我坚定了给它加个16G内存条的决心

    课后作业

    验证码程序

    复制代码
    import java.util.Scanner;
    import java.util.Random;
    
    public class Class11 {
        public static void main(String[] args) {
               Scanner in=new Scanner(System.in);
               Random random=new Random();
               StringBuffer sb=new StringBuffer();
               for(int i=0;i<4;i++){
               int number=random.nextInt(3);
               long result=0;
               switch(number){
                  case 0:
                      result=Math.round(Math.random()*25+65);
                      sb.append(String.valueOf((char)result));
                      break;
                 case 1:
                     result=Math.round(Math.random()*25+97);
                     sb.append(String.valueOf((char)result));
                     break;
                 case 2:     
                     sb.append(String.valueOf(new Random().nextInt(10)));
                     break;
                 }
                }
               String key=sb.toString();
               System.out.println("验证码如下:");
               System.out.println(key);
               System.out.println("请输入验证码");
               String usekey=in.next();
               for(;!(key.equals(usekey));)
               {
                   System.out.println("验证码错误,请重新输入");
                   usekey=in.next();
               }
               System.out.println("验证成功!");
           }
    
    }
    复制代码

    运行结果

  • 相关阅读:
    聊聊豆瓣阅读kindle版..顺便悼念一下library.nu…
    PhoneGap+jQm webapp本地化(1)环境搭建以及资源介绍
    尝试分析Q群作为技术群是个不恰当的选择!
    某android平板项目开发笔记计划任务备份
    android 自动化测试的傻瓜实践之旅(UI篇) 小试身手
    latex/Xelatex书籍排版总结顺便附上一本排好的6寸android书…
    某android平板项目开发笔记自定义sharepreference UI
    android ORM框架的性能简单测试(androrm vs ormlite)
    网络管理员必学手册
    PPT插入FLV视频文件的简单方法
  • 原文地址:https://www.cnblogs.com/ldy2396/p/14218654.html
Copyright © 2020-2023  润新知