(1)
double d="1234.5";
String ds1,ds2="12345.6789";
Double D2;
ds1=Double.toString(d);
D2=Double.parseDouble(ds2);
 这代码有没问题?  如ds1=Double.toString(d);  为什么是Double.toString  而不是String.toString? (2)public class  Array123
{
       public static void main(String args[]) throws java.io.IOException
       {
            int data1[];
            data1 = new int[10];
            System.out.println("please intput 10 datas:");
            for(int i=0;i<10;i++)
                     data1[i]  = (char)System.in.read();           //为什么是(char),而不是(int),data1 不是int 型数组吗?
            System.out.println("The data of the array is:");
            for(int i=0;i<10;i++)
                     Syatem.out.println("data1[i]"+(char)data1[i]);
       }
}

解决方案 »

  1.   

     这代码有没问题? 如ds1=Double.toString(d); 为什么是Double.toString 而不是String.toString?  
    这没有问题。另外String.toString不是一个静态方法。
    应该是String.valueOf(double),这个方法实现与Double.toString是一样的。查看一下内部的源码就明白了。char和int是可以自动转型的,所以哪里没有问题。实际上read会返回int。
      

  2.   

    第一个问题Double.toString()是一个静态方法,能将double型的数据,解释为string类型
    第二个问题:你用int也正常运行的 
    你只需要保证最后一句Syatem.out.println("data1[i]"+(char)data1[i]);
    而不是Syatem.out.println("data1[i]"+data1[i]);这是就会输出ASCII码对应的字符
    否则会输出整数
      

  3.   

    第一个问题:代码没问题。Double.toString(double d)是Double类里的一个静态方法,这个方法作用是返回 double 参数的字符串表示形式。String类也有toString方法~~作用是返回字符串本身。
    第二个问题:你写成int也没有问题,这个方法的返回值本身就是int类型的
      

  4.   

    Double.toString , 将一个double类转换成String,当然是Double的方法了,String也有String.valueOf();你可以看看
      

  5.   

    double d="1234.5";