我想调用get()方法,然后根据这个类里面的一个falg的类型,来决定返回什么数据类型
写的代码如下,但是get方法的返回类型是空的,不能得到数据,应该怎么办呢
 void getValue(){
switch((char)field_type)
     {
     default:
     case FLD_TYPE_CHARACTER:
     {
     getStringValue();
     break;
     }
     case FLD_TYPE_INTEGER:
     {
     getIntValue();
     }
     break;
     case FLD_TYPE_FLOAT:
     case FLD_TYPE_DOUBLE:
     {
     getDoubleValue();
     break;
    
     }
     case FieldAttribute.FLD_TYPE_DATE:
     {
     getDateValue();
     break;
     }
     }
   }
   String getStringValue()
   {
return StringValue;   
   }
   int getIntValue()
   {
return IntValue;   
   }
   int getDateValue()
   {
return DataVaule;   
   }
   double getDoubleValue()
   {
return DoubleVaule;
   
   }

解决方案 »

  1.   

    void getValue()??  void 的怎么返回?
      

  2.   

    get方法不是你自己写的??
    如果是的话你可以自己把void改成object另外把方法体稍微修改一下如果不是你自己写的,那你设置一个类变量Obcect value=null;
    当方法处理完后去用value去赋值就ok了
    Obcect value=null;
    void getValue(){
                switch((char)field_type)
                {
                default:
                case FLD_TYPE_CHARACTER:
                    {
                        value=getStringValue();                    
                         break;
                    }
                case FLD_TYPE_INTEGER:
                    {
                        getIntValue();
                    }
                    break;
                case FLD_TYPE_FLOAT:
                case FLD_TYPE_DOUBLE:
                    {
                        getDoubleValue();
                        break;
                        
                    }
                case FieldAttribute.FLD_TYPE_DATE:
                    {
                        getDateValue();
                        break;
                    }
                }
           }
           String getStringValue()
           {
            return StringValue;   
           }
           int getIntValue()
           {
            return IntValue;   
           }
           int getDateValue()
           {
            return DataVaule;   
           }
           double getDoubleValue()
           {
            return DoubleVaule;
               
           }
      

  3.   

    返回object的话,还要再次对它进行判断,我想直接调用一个get方法,东西全部在里面实现
      

  4.   

    Obcect value=null;
    Object getValue(){
                switch((char)field_type)
                {
                default:
                case FLD_TYPE_CHARACTER:
                    {
                        value=getStringValue();[/color]                    
                         break;
                    }
                case FLD_TYPE_INTEGER:
                    {
                        value=getIntValue();
                    }
                    break;
                case FLD_TYPE_FLOAT:
                case FLD_TYPE_DOUBLE:
                    {
                        value=getDoubleValue();
                        break;
                        
                    }
                case FieldAttribute.FLD_TYPE_DATE:
                    {
                        value=getDateValue();
                        break;
                    }
                }
           }
           String getStringValue()
           {
            return StringValue;   
           }
           int getIntValue()
           {
            return IntValue;   
           }
           int getDateValue()
           {
            return DataVaule;   
           }
           double getDoubleValue()
           {
            return DoubleVaule;
               
           }