//关于double 类型 转换成 float 类型出错,等待解决.
public   class   aa 
 { 
 	static   double   num=993.01d; 
 	static   float   temp=Float.valueOf(num).floatValue();   
 	public   static   void   main(String   args[]) 
 	{	 
 		System.out.println(aa.temp); 
 	} 
 }   
 /************************************************************************* 
 	您好,我是想把double   num   转换成   float   temp   之后输出,但是上面的程序,不能通过 
 	编译,请各位指点,给出正确答案. 
 	如果您有时间的话,请您告诉我,上面的程序到底错在哪里?     
 *************************************************************************/
------解决方案--------------------因为你参数类型不对,Float.valueOf()中间的参数应该是String类型的 
 改成这样(如果你不嫌麻烦): 
 	static double num=993.01d; 
 	static float temp=Float.valueOf(String.valueOf(num)).floatValue();   
 	public static void main(String args[]) 
 	{	 
 		System.out.println(aa.temp); 
 	}
------解决方案--------------------static float temp=Float.valueOf( " "+num).floatValue(); 
 你试试可以不?
------解决方案--------------------public static void main(String args[]) 
 	{	 
 		System.out.println(aa.temp); 
 	} 
 放到public class aa{}外面
------解决方案--------------------  static float temp=Float.valueOf(String.valueOf(num)).floatValue();   
 不赞成:直接temp=(float)num;就可以了,因为如果num表示的数已经超过了float所表示的范围,两种方法都会取不到值。   
 但这一种方法一目了然,很直观。
------解决方案--------------------统一楼上的,可以直接转换类型的! 
 数值之间的转换都可以用上面的方法,简单啊!