调用java写的webservice 有一个trace函数返回的是string[][],是根据参数1和参数2返回2维数组,有12个列,行数是根据参数1(起始行)和参数2(请求返回行)来,我定义了2维数组,指定了初始值.
      
web_service.Interface xxx;xxx = new web_service.Interface();string[,] array2D = new string[10,12] ;for(int i=0;i<10;i++) 
{  
  for(int j=0;j<12;j++)  
  {
    array2D[i, j] = "";  
  }  
}array2D = xxx.trace( 1, 10);但是运行到这里提示 
无法将类型“string[][]”隐式转换为“string[*,*]这个要用指针吗?

解决方案 »

  1.   

    string[][]是交错数组或者说是数组的数组,它 的每个元素是一个新的数组。
    string[*,*]是 一个二维数组。
    当然不能转换了。
      

  2.   

    string[][]和string[*,*]就两个完全不一样的东西string[][]是数组的数组,即一维数组中的每一个元素都指向一个数组,且每个元素所指向的数组都可以不相同,长度也可以是不相同。string[*,*]就是通常我们说的二维数组
      

  3.   

    string[][]”隐式转换为“string[*,*] 
    完全不是一样东西。
      

  4.   

    String[][] array2D = new String[10][];
    for(Int32 i = 0; i < 10;i++)
    {
      array2D[i] = new String[12];
    }array2D = xxx.trace( 1, 10);
      

  5.   

    String[][] array2D = new String[10][];在C#里面提示
    错误 1 new 表达式要求在类型后有 () 或 []String[][] array2D = new String[10][12];
    这个提示
    错误 2 无效的秩说明符: 应为“,”或“]”
      

  6.   

    为什么我的VS2005不能定义交错数组??
    int[][] jaggedArray = new int[2][];   
    jaggedArray[0] = new int[4];   
    jaggedArray[1] = new int[3]; new 表达式要求在类型后有 () 或 []
      

  7.   


    String[][] array2D = new String[10][12];在最后一个方括号里不能有数字 。
    http://msdn.microsoft.com/zh-cn/library/2s05feca(VS.80).aspx
      

  8.   

    可以了,定义交错数组成功了,开始是测试程序改来改去,老报错,重新新建了一个测试程序,定义了交错数组就调用成功了....
    现在还要写成com+ 给pb调用..真杯具啊~