首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

紧急问个有关问题,如何在传入的params object[] args中插入项

2012-08-24 
紧急问个问题,怎么在传入的params object[] args中插入项例如public void test(params string[] args){//

紧急问个问题,怎么在传入的params object[] args中插入项
例如
public void test(params string[] args)
{
  //怎么在args的最前面增加一项
  //args.push("一项新的");
  MessageBox.Show(string.Format("{0}{1}{2}{3}",args));
}

[解决办法]
static void Main(string[] args)
{
test("1", "2", "3");
}

public static void test(params string[] args)
{
args = new string[] { "新的" }.Concat(args).ToArray();
Console.WriteLine(string.Format("{0}{1}{2}{3}", args));
}
[解决办法]
那就新建一个数组,复制过去不就得了。代码由你写了,别人还有什么特别的要求吗?

C# code
            string[] more = new string[args.Length + 1];                        more[0] = "一项新的";            Array.Copy(args, 0, more, 1, args.Length);            MessageBox.Show(string.Format("{0}{1}{2}{3}", more)); //args));
[解决办法]
如果只是像代码中这样简单拼接,用String.Join就好了:
C# code
    //如果args的长度固定为3的话    MessageBox.Show("一项新的" + string.Join("", args));    //否则    MessageBox.Show("一项新的" + string.Join("", args, 0, 3)); 

热点排行