• 第二周课后学习作业&&动手动脑课后作业


    第一个是阅读并理解这段代码:

    package first1;

    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};

    首先是对于getClass(),isPrimitive()的解释:

    Object类中包含一个方法名叫getClass,利用这个方法就可以获得一个实例的类型类。类型类指的是代表一个类型的类,因为一切皆是对象,类型也不例外,在Java使用类型类来表示一个类型。所有的类型类都是Class类的实例

    isPrimitive():boolean:判断该类型是否是基本类型,即是否是int,boolean,double等等。

    所以第一个s和t不是同一个对象,输出false

    第二个地方因为getClass()输出不是基本类,所以处false

    最后一个值相同所以出true

    最后是遍历输出了所有的值

    第二个是测试第二段代码

    package first1;

    import java.util.Scanner;

    import java.util.Random;

    public class second1 {

    static Scanner sc=new Scanner(System.in);

    public static void main(String args[]){

    int x=100;

    int y=200;

    System.out.println("x+y="+x+y);

    System.out.println(x+y+"=x+y");

    }}

    出现这种情况是因为第一个的加号是并列输出

    而第二个是相加后输出

    最后是课堂测验

    需要写一个能自动生成30道小学四则运算题目的“软件”,要求:

    1.题目避免重复

    2.可定制(数量/打印方式)

    这道题主要是利用循环输出题目,然后利用二维数组实现查重并输出,定制数量可以用建立一个变量然后打印方式可以采用除余的方法来解决。

    以下是源代码:

    package first1;

    import java.util.Scanner;

    import java.util.Random;

    public class fourth {

    static Scanner sc=new Scanner(System.in);

    public static void main(String args[]){

    Random rand =new Random();

    int k;

    int sum=0;

    int s1;

    int s2;

    int a[][]=new int[100000][3];

    System.out.println("请输入题目数量");

    int sl;

    sl=sc.nextInt();

    System.out.println("请输入一行输出的数");

    int sl1;

    sl1=sc.nextInt();

    int temp;

    boolean flag=false;

      while(sum<=sl) {

    s1=rand.nextInt(90)+10;

        s2=rand.nextInt(90)+10;  

        k=rand.nextInt(4)+1;

        if(k==2)

        {if((s1-s2)<0)

        {temp=s1;s1=s2;s2=temp;}

        }

        if(k==3)

        {

        while(s2==0)

        {s2=rand.nextInt(90)+10;}

        }

        if(k==3)

        {

        while((s1%s2)!=0)

        {

        s1=rand.nextInt(90)+10;

        s2=rand.nextInt(90)+10;

        }

        } 

        a[sum][0]=s1;

        a[sum][1]=s2;

        a[sum][2]=k;

        for(int i=0;i<sum;i++)

        {

        if(a[sum][0]!=a[i][0]&&a[sum][1]!=a[i][1]&&a[sum][2]!=a[i][2])

        {flag=true;}

       

        }

        if(flag==true)

        {

        switch(a[sum][2])

        {

        case 1:

        System.out.print((sum)+"."+a[sum][0]+"*"+a[sum][1]+"="+" ");

            break;

        case 2:

        System.out.print((sum)+"."+a[sum][0]+"-"+a[sum][1]+"="+" ");

            break;

        case 3:

        System.out.print((sum)+"."+a[sum][0]+"/"+a[sum][1]+"="+" ");

            break;

        case 4:

        System.out.print((sum)+"."+a[sum][0]+"+"+a[sum][1]+"="+" ");

            break;

       

       

        }

                if((sum)%sl1==0)

            {   

            System.out.println(); 

       

            }

       

               

       

       

        }

       

      sum=sum+1;

        

       

       

      }

     

     

     

     

      }

    }

     

  • 相关阅读:
    161028、Nginx负载均衡实现tomcat集群方案简要小结
    161027、Java 中的 12 大要素及其他因素
    161026、更快速将你的页面展示给用户[前端优化篇]
    161025、java提高篇之关键字static
    161024、并发控制中的乐观锁与悲观锁
    161021、spring异步调用,完美解决!
    161020、web调试工具fiddler介绍及使用
    RuntimeError: cryptography requires setuptools 18.5 or newer, please upgrade to a newer version of setuptool
    PyCharm IDE环境下,执行unittest不生成测试报告问题解决
    (转)selenium使用Xpath+CSS+JavaScript+jQuery的定位方法(治疗selenium各种定位不到,点击不了的并发症)
  • 原文地址:https://www.cnblogs.com/ljpljm/p/11553247.html
Copyright © 2020-2023  润新知