数组里怎么把一个指定元素放到第一个啊~~~ RT 在一个数组里放了几张图片 怎么把指定的一张图片 放到数组的第一个位置 现在是按照图片名字顺序放的要怎么写啊 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 public static class ArrHelper { /// <summary> /// 对类型为T的数组进行扩展,把满足条件的元素移动到数组的最前面 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="arr">源数组</param> /// <param name="match">lamda表达式</param> /// <returns></returns> public static bool MoveToFront<T>(this T[] arr, Predicate<T> match) { //如果数组的长度为0 if (arr.Length == 0) { return false; } //获取满足条件的数组元素的索引 var index = Array.FindIndex(arr, match); //如果没有找到满足条件的数组元素 if (index == -1) { return false; } //把满足条件的数组元素赋值给临时变量 var temp = arr[index]; Array.Copy(arr, 0, arr, 1, index); arr[0] = temp; return true; } public static void PrintArray<T>(T[] arr) { foreach (var item in arr) { Console.Write(item + " "); } Console.WriteLine(); } }class Program { static void Main(string[] args) { int[] intArr = new int[]{1, 2, 3, 4, 5}; ArrHelper.PrintArray(intArr); intArr.MoveToFront(i => i == 3); ArrHelper.PrintArray(intArr); Console.ReadKey(); } } array.insert 0 new之后arr[10]=xxx 把指定的元素与第一个元素之间进行swap就可以了 为什么不用List<T>? 转换为list,插入过后再转换回来 string[] a = { "A", "B", "C", "D" }; var n = Array.IndexOf(a, "C"); var b = a[n]; Array.Copy(a, 0, a, 1, n); a[0] = b; Image[] arr = { ... }Image t = arr[x];arr[x] = arr[0];arr[0] = t; c#中参数长度的问题 跪请高手指教 -- 如何判断 上传图片 是否被ps或其他处理工具处理过 谢谢了 【急】批量插入数据 中的 SqlDecimal 类型? 在DataGrid中动态生成conBox 和CheckBox后获得事件和值的问题 推荐一个视频学习网 求助:程序退出时线程无法销毁 关于 world wind 的问题 ,重谢! C#建立的项目,生成一个XX.csproj和xx.sln文件,有什么区别啊? 问一个可能是低级的问题:嵌在网页中的Windows Control能不能打印 c#程序如何打包?移植? C#会存在内存碎片的问题吗? C#索引超出了数组界限
{
/// <summary>
/// 对类型为T的数组进行扩展,把满足条件的元素移动到数组的最前面
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="arr">源数组</param>
/// <param name="match">lamda表达式</param>
/// <returns></returns>
public static bool MoveToFront<T>(this T[] arr, Predicate<T> match)
{
//如果数组的长度为0
if (arr.Length == 0)
{
return false;
}
//获取满足条件的数组元素的索引
var index = Array.FindIndex(arr, match);
//如果没有找到满足条件的数组元素
if (index == -1)
{
return false;
}
//把满足条件的数组元素赋值给临时变量
var temp = arr[index];
Array.Copy(arr, 0, arr, 1, index);
arr[0] = temp;
return true;
}
public static void PrintArray<T>(T[] arr)
{
foreach (var item in arr)
{
Console.Write(item + " ");
}
Console.WriteLine();
}
}
class Program
{
static void Main(string[] args)
{
int[] intArr = new int[]{1, 2, 3, 4, 5};
ArrHelper.PrintArray(intArr);
intArr.MoveToFront(i => i == 3);
ArrHelper.PrintArray(intArr);
Console.ReadKey();
}
}
arr[10]=xxx
var n = Array.IndexOf(a, "C");
var b = a[n];
Array.Copy(a, 0, a, 1, n);
a[0] = b;
Image t = arr[x];
arr[x] = arr[0];
arr[0] = t;