3. int x=4;  (B)(已在JDK验证)
System.out.println("value is " +((x>4)?99.9:9));
A、9  B、9.0   C、99.9   D、99为什么输出是9.0而不是9

解决方案 »

  1.   

    还有个问题7、关于垃圾收集的哪些叙述是对的(B)
    A、程序开发者必须自己创建一个线程进行内存释放的工作。
    B、垃圾收集将检查并释放不再使用的内存。
    C、垃圾收集允许程序开发者明确指定并立即释放该内存。
    D、垃圾收集能够在期望的时间释放被java对象使用的内存括号里是我认为正确的答案
      

  2.   

    12、以命令”java MyTest x y”执行文件MyTest.class后,表达式(  )为真  
     (A)args[0] = "x" (B)args[0] = 'y'
     (C)args[0] ="MyTest x y " (D)args[1]= "MyTest"'y'
    这个题目我不知道是什么意思
      

  3.   

    B  B  A
    回答完毕!
      

  4.   

    3. int x=4;  (B)(已在JDK验证)
    System.out.println("value is " +((x>4)?99.9:9));
    A、9  B、9.0   C、99.9   D、99
    ---------------------------------------------------
    ((x>4)?99.9:9)进行运算时,因为99.9是double,所以将表达式结果也转成double型。7.是B12.是带命令参数执行MyTest.class,public static void main(String[] args)中的args[]存放的就是命令参数,所以args[0] = "x",args[1] = "y",这题选A
      

  5.   

    第一个问题:
    因为在题目中出现了99.9,所以数据类型会自动的由低级向高级转换,所以输出的是9.0,而不是9。
    第二个问题:是java的垃圾回收机制,记住就行了。
    第三个问题:这是java的一个动态传递参数的机制,格式为java + 文件名 +参数1 +参数2 +....
    当你想引用动态传递的参数时,用args[0],args[1],args[2]...即可引用到相对应的参数了。
    说的不好,不知道你是否理解了。
      

  6.   

    15.请判断下面的代码片段的执行结果:(A)
     void func(int a, String b, String c) {//我在JDK上只有func为static才能执行
    a = a + 1;
    b.trim() c = b;
    }
    public static void main(String[] args) {
    int a = 0;
    String b = “Hello  World”;
    String c = “OK”;
    func(a, b, c);
    System.out.println(“” + a + “, ” + b + “, ” + c);
    }
    A. 0, Hello  World, OK(我只能理解为是静态main没有执行静态函数)
    B. 1, HelloWorld, HelloWorld
    C. 0, HelloWorld, OK
    D. 1, Hello  World, Hello World 
    我再帖一题,请大家帮帮忙
    答案A是我在JDK上验证的结果,那岂不是函数没有被执行?????
    可是我认为是答案D
      

  7.   

    答案是编译不通过,因为main()是静态方法却调用了非静态方法func();所以编译不通过,你可以试试。
      

  8.   

    我知道上面是编译不通过的,但是我编译的时候加了static,你可以看看我在func()后打上的括号里的注释我主要是想知道为什么会输出的是A
      

  9.   

    首先:肯定编译过不了
    其次:值传递和址传递的区别,值传递主要用于基本类型,比如这里的整形
    再次:String的不变性,改变时,它重新在其它地方创建了新的字符串