问题:
有一个这样的字符串:string str1="12,place,15.3";
现在我用split方法拆分,string [] _str=str1.split(',');
这样_str[0]="12",_str[1]="place",_str[2]="15.3"。
而实际上12时int型,15.3是float型,现在的问题是,应该怎样判断字符串中12和15.3是不同类型的?谢谢啊!

解决方案 »

  1.   

    if ( 第一个字符是数字 )
    {
         if ( 这个字符串中有'.' )
             是float;
         eles
             是int;
    }
    else 
       是字符串;
      

  2.   

    private bool IsSameType(string _str[0],string _str[2])
    {
        int i = _str[0].IndexOf(".");//判断是否有"."字符,有,i>=0;没有,则i<0
        int j = _str[2].IndexOf(".");
        if(i*j)<0                    //都有"."字符,或者都没有"."字符,则i*j的值不小于0
            return false;
        else 
            return true;
    }
      

  3.   

    to:diandian82(点点) 
    是的,初始字符串str中可能有不同种类型,且不同类型之间用','分割开,目的就是要判断分割的各个部分是不是属于同种类型,
    比如:str="12,place,15.3,12345678912345"等等,上面的字符串我只是举个例子而已,