-----------
double a=1234.5678;
long b;short c;
要求将a的整数部分赋值给b 小数赋给c

解决方案 »

  1.   

    public class Envalue {
    public static void main(String args[]){
    double a = 12343.5678;
    long b;
    short c;

    String tmp = String.valueOf(a);
    b = Long.parseLong(tmp.substring(0,tmp.lastIndexOf('.')));
    c = Short.parseShort(tmp.substring(tmp.lastIndexOf('.')+1));

    System.out.println(b);
    System.out.println(c);
    }
    }
      

  2.   

    寻求位操作的方法 用&  偶在学习 嘿嘿  高手们辛苦了
      

  3.   

    ^_^,对亚,double和float不能用位操作符!
      

  4.   

    .......
    只能对int型和int型兼容类型用位操作符
      

  5.   

    位操作只对int以及int以下有效啊!
      

  6.   

    public static void main(String [] args)
    {
    double a = 12343.5678;
    int b = (int) a, c = b;
    int dot = String.valueOf(a).length() - String.valueOf(a).indexOf(".");
    for(int i = 1; i < dot; i++){
    a *= 10;
    c *= 10;
    }
    c = (short) (a - c);
    System.out.println("b = " + b + ", c = " + c);
    }
      

  7.   

    当然不是.
    Double不能位操作.