short s;
s=s+1;
正确吗,为什么?
short t;
t+=1;
正确吗,为什么?
float y=1.1;
正确吗,为什么?
我是采鸟,刚学,不要笑偶,谢谢

解决方案 »

  1.   

    1 3错,2对
    强烈建议注意打好基础和google完了再发上来问
      

  2.   

    3.要改成float y=1.1f;
    1.不知哪错了
      

  3.   

    1 要写成 
    short s;
    s=(short) s+1;
      

  4.   

    short s;
    s=s+1;
    java默认的加法运算是返回是int ,所以要
    s = (short) (s + 1);
    float y=1.1;
    没有把1.1变成 1.1f,java会认为是double,所以也要转换float y = (float) 1.1;
      

  5.   

    s += 1会自动将int转换成short
      

  6.   

    123这类是int型的,1.23这类是float型的.Java中低类型向高类型转换是默认的(能写上更易读些);
    反之需要强制性转换!整数类型(byte,short,int,char等)的运算结果最低是int型的.+=,-=,*=这类运算符隐含强制类型转换
      

  7.   

    2也要把t先赋值
    =============
    不赋也不算错.因为Java的基本类型默认赋值为0值的.
    只是显示地赋上int i=0;能更容易看懂!
      

  8.   

    不懂,也想发表一下,s + 1 相会变成int.
      

  9.   

    Java的基本类型int也不是默认赋值0,那是当它作为是个类的属性时才会有一个默认值,因为实例化这个类时它必须要有一个值.而在一个方法定义一个基本变量,它值好像并不是0吧.还报错呢...
    public class A
    {
       public static void main(String args[])
      {
         int i;
         System.out.println(i); 
       }
    }//报错public class A
    {
      int i;
       public static void main(String args[])
      {     
         System.out.println(new A().i); //这里才是0
       }
    }