C#程序:
using System;
using System.Collections;
class Program
{
static void Main()
{
string source = "abs343 324dsad432 dasd534";
int[] arr = GetArrayFromString(source);
foreach (int num in arr)
{
Console.WriteLine(num);
}
}
public static int[] GetArrayFromString(string source)
{
char[] arr = source.ToCharArray();
ArrayList list = new ArrayList();
int[] nums;
int i;
int sum;
for (i = 0; i < arr.Length; )
{
sum = 0;
while (i < arr.Length && !(arr[i] >= '0' && arr[i] <= '9'))
i++;
while (i < arr.Length && arr[i] >= '0' && arr[i] <= '9')
sum = sum * 10 + (arr[i++] - '0');
list.Add(sum);
}
nums = new int[list.Count];
IEnumerator temp = list.GetEnumerator();
i = -1;
while (temp.MoveNext())
{
nums[++i] = int.Parse(temp.Current.ToString());
}
return nums;
}
}
追问报错了 ,大哥。
追答你的程序最前面要加上:
using System;
using System.Collections;
因为ArrayList在System.Collections命名空间中。
我在本地的VS .NET 2005环境下测试了,没问题。
本回答被提问者采纳