var
  s, ss, ds, qx, dz,sn ,biosstr: string;
  I: Integer;
  ja, jo: ISuperObject;
begin
  ja := SA([]);

  jo := SO();

  jo.S['a'] := '455-555';
  ja.AsArray.Add( jo.AsObject.GetValues.AsArray[0] );
  jo.S['a'] := '455-444';
  ja.AsArray.Add( jo.AsObject.GetValues.AsArray[0] );
  jo.S['a'] := '455-666';
  ja.AsArray.Add( jo.AsObject.GetValues.AsArray[0] );

  jo := SA([ja.AsArray[0]]);
  ShowMessage( jo.AsString + ' ' + ja.AsArray[0].AsString );
  for I := 0 to jo.AsArray.Length - 1 do
    ShowMessage( jo.AsArray[I].AsString);
  Exit;

  ShowMessage( SA([ja.AsArray[0]]).AsString );
    ShowMessage( SA([ja.AsArray[1]]).AsString );
      ShowMessage( SA([ja.AsArray[2]]).AsString );
//  ShowMessage( ja.AsArray[0].AsArray[0].AsString);
  Exit;

 

 

//不能直接 用 
jo := so('444-555');
ja.asArray.Add( jo );


//否则,中间的-后的内容会 消失,而且 没有引号

  ShowMessage( ja.AsString); //[444]

 

先构建一个 名值对象,然后,取值的数组第一个元素

jo.AsObject.GetValues.AsArray[0];


--------------------------------------

jo := SO();
jo.S['aaa'] := '444/*+-.~!@#$%^&()=555';
ja := SA([]);
ja.AsArray.Add( jo.AsObject.GetValues.AsArray[0] );
ShowMessage( ja.AsString);

 

 

 

 

 posted on 2015-08-27 08:44  宝兰  阅读(387)  评论(0)    收藏  举报