• Java基础测试


    一、单项选择题

    1.以下()不是Java的原始数据类型。

       A.short      B.boolean      C.String      D.float

    Java的原始数据类型一共就8个,分别是:byte、short、int、long、boolean、char、float、double。

    2.请分析下列的Java定义正确的是(B)

      A.public static float _num = 32.5 ;

      B.public static int  num=20;

      C.public String name=’张三’;双引号

      D. public int $_2 = 3.14;

    3. 编译Java源程序文件将产生相应的字节码文件,这些字节码文件和源文件的扩展名分别为( B ) 

    A. .java和.class B. .class 和 .java C. .html 和 .java D. .class 和 .exe 

    4.一个Java 源程序名为MyClass.java,下列在该文件中定义public修饰的类名正确的是(D)

    A、myClass        B、MYCLASS        C、myclass          D、MyClass

    5.下列声明哪个是错误的( A ) 

    A、int i = 1.0f;                   B、float f = 1; 

    C、double d = 34.4;                D、long m = 4990;

    float a = 1;这里的1是整形,当赋值给一个float时,存在一个隐式转换,不损失精度。
    float a = 1f;1f就是float类型的。

    如果你这样定义 f
    float f = 1.0;
    肯定会出错。 因为1.0默认是double类型的。double范围比float大。为了不损失精度,不会自动转换。这是必须这样写
    float f = 1.0f;

    一般一个数如果没有加什么的是默认int类型,然后回自动转换成float
    而后面加f表示这个是一个float数,
    一个小数默认是double,而那时候你赋值给float就不行了,必须加这个了,好像是这个只能往大范围转换,小范围转换就需要辅助的

    6.以下for循环的执行次数是( B )

       for(int x=0;(x==0)&(x>4);x++){

      }

      A、无限次      B、一次也不执行      C、执行4次       D、执行3次

    //& : 每一位都比较,有0则0,无0则1.

    7.以下方法声明正确的是(C)

      A. public int show(double a){  return a;}   B. public static show(){ }

      C. public void show() {  return ; }         D. public String show(){ }

    Java void  :可以写return;表示程序结束,但是没有返回值

    8.在A类中定义一个method()方法,使其可以通过类名直接调用,即A.method(),下列方法定义符合要求的是( A )

      A、static void method( ){}          B、public void method( ){}

      C、int method( ){}                  D、method( ){}

    (概念)static表示“全局”或者“静态”的意思,用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。 

    (概念)用public修饰的static成员变量和成员方法本质是全局变量和全局方法,当声明它类的对象市,不生成static变量的副本,而是类的所有实例共享同一个static变量。

    9. Java方法定义中void 的含义( C   ) 

      A. 方法体为空

      B. 定义的方法没有形参

      C. 定义的方法没有返回值

      D. 方法的返回值不能参加算术运算

    10. 在JAVA中,下面关于方法说法不正确的是(B)

      A.方法无返回值用return

      B.方法有返回值用void修饰

      C.方法有返回值用return返回

      D.有参方法,参数之间用逗号分隔

    11. 以下代码执行的结果:(B)

          int x = 3 , y = 5 , z = 1;

          int result=--z>y++?x+y++:++z;

              System.out.println(result);

         A. 3   B. 1   C.  0   D. 2

    12. 分析如下Java程序段,程序编译运行结果是(C)。

    public class A {

     public static void main(String[] args) {

      int num=0;

      switch(num){

         default:

            System.out.println("Default");

            num++;

         case 1:

             System.out.println("num="+ num);

             num+=2;

         case 2:

           System.out.println("num=" + ++num);

           break;

         case 3:

           System.out.println("num="+ ++num);

            break;}

      }

    A. 输出:Default

     num=1

     num=3

    B.输出:Default

    C. 输出:Default

     num=1

     num=4

    D. 程序编译出错

    13.在JAVA中,(  B  ) 关键字用来终止本次循环语句。

    A.return      B.continue       C.break        D.exit

     continue是跳出该循环进入下一个循环,break是跳出循环体,执行循环外的函数体,return是跳出整个函数体,函数体后面的部分也不执行

    14、给定一个java源程序Test.java ,在命令行中,使用下面( A  )语句可以编译、运行该程序。

    A.javac Test.java,java Test         B.javac  Test.java,java  Test.class
    C.java Test.java ,javac Test        D.java  Testjava ,javac Test.class

    15.给定java代码,如下:

         public int count(int b1,double b2){

               return______;

         }

    要使用这段代码能够编译成功,横线处可以填入(D)。

    A. (double) b1/b2    B.(int) b1-b2     C.b1-b2     D. b1-(int)b2

    https://www.cnblogs.com/liujinhong/p/6005714.html

    16、在JAVA中,无论测试条件是什么,下列( B  )循环将至少执行一次。

      A、for          B、do…while        C、while        D、while…do

    17.关于Java中的垃圾回收器,下列说法正确的是(D)

    A.垃圾回收器可以及时清理垃圾

    B. 垃圾回收器只有通过调用System.gc()方法后才可以清理垃圾

    C. 程序员既可以自行清理垃圾,也可以通过垃圾回收器清理

    D. 垃圾需要通过垃圾回收器清理,程序员无法干预

    https://www.cnblogs.com/xumaodun/p/4876110.html

    二.填空题

    1. 以下标识符正确的是: 23

    ① 1_str   ② _name  ③ $a    ④ @str   ⑤ 7a  ⑥ str_%@

    2. 设x和y均为int型变量,则以下语句:x+=y;y=x-y;x-=y;实现的功能是__X与y数值转换__

    2. 已知有如下的二进制: 01010111 ,则转换成十进制为:___87____

    3. 在Java的基本数据类型中,char型采用Unicode编码方案,每个Unicode码占用_____2_____字节内存空间,这样,无论是中文字符还是英文字符,都是占用______2______字节内存空间。char类型数据的取值范围是 :    0~ 65535

    unicode是不定长度的字符表达方式。
    也就是说,一个字符可能是一个字节,也可能是2个字节,也可能有多个字节。
    但是java的默认字节输出方式是utf-8,也就是固定的2个字节长度。
    utf-8是unicode的一种存储方式。

     三.简答题

    1.简述执行Java程序的三个步骤?

    答:  ①编写源程序 

        ②编译源程序生成字节码文件

           ③执行程序 

    五.编程题

     

    import java.util.Scanner;
    /*
    3.输入一个正整数repeat (0<repeat<10),做repeat次下列运算:
    输入一个正整数n,如果它是素数,输出"YES",否则,输出"NO"
    (素数就是只能被1和自身整除的正整数,1不是素数,2是素数)。
    要求定义并调用函数prime(m)判断m是否为素数。
    例如:
    输入
    4 (repeat=4) 意思就是重复4次
    然后输入:
    1
    NO (1不是素数)

    2
    YES (2是素数)

    9
    NO (9不是素数)

    17
    YES (17是素数)

    * */
    public class demo01 {

    public static void main(String[] args) {
    // TODO Auto-generated method stub

    Scanner sc = new Scanner(System.in);
    System.out.println("请输入一个范围在0到10之间,且不包含0和10的正整数:");
    int repeat = sc.nextInt();
    if(repeat>0&&repeat<10){
    for(int j = 0 ; j < repeat ; j++){

    Scanner input = new Scanner(System.in);
    System.out.println("然后请输入一个正整数:");
    int n = input.nextInt();
    // System.out.println(n);
    prime(n);
    System.out.println("------------end-----------");
    }
    }else{
    System.out.println("输入有误!");
    }

    }
    public static void prime(int m){
    boolean stutas = true;
    for(int i = 2; i<m;i++){
    if(m%i==0){
    stutas = false;
    }
    }
    if(stutas == true&&m!=1){System.out.println(m+"是素数");}
    else{System.out.println(m+"不是素数");}
    }

    }

  • 相关阅读:
    Gitkraken使用教程
    request.getHeader中区分大小写参数
    MySql 中查询列表中添加序号
    解决windows 下mysql 表名自动转成小写的问题
    MYSQL服务无法启动,服务没有任何错误;解决方法
    idea中设置一键生成方法注释和类注释
    Windows10下安装MySQL8.0.21-64
    navicat连接mysql出现2059错误的解决方法
    解决tomca在eclipse中正常启动,在bin下启动闪退问题
    QT线程的结束
  • 原文地址:https://www.cnblogs.com/AlbertY/p/9302059.html
Copyright © 2020-2023  润新知