找回密码
 立即注册
楼主: 小米

[脚本] FindGameObjectsWithTag冒泡算法依次按顺序存入数组代码

[复制链接]
发表于 2013-3-12 15:46 | 显示全部楼层 |阅读模式

public GameObject[] cubes;

cube集合设置为image 注意大小写

public void Awake()
{
   cubes = GameObject.FindGameObjectsWithTag("Image");
        //冒泡算法排最小的在前
        for (int i = 0; i < 7;i++ )
        {
            for (int j = 7; j > i;j-- )
            {
                if (int.Parse(cubes[j].name.ToString().Substring(4,1)) > int.Parse(cubes[j - 1].name.ToString().Substring(4,1)))
                {
                    int tempValue = int.Parse(cubes[j].ToString().Substring(4,1));
                    cubes[j] =GameObject.Find("Cube" + cubes[j - 1].ToString().Substring(4,1));
                    cubes[j - 1] =GameObject.Find("Cube" + tempValue.ToString());
                }
            }
        }
}



本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

×

评分

参与人数 1鲜花 +2 收起 理由
胡椒孙 + 2 淡定

查看全部评分

发表于 2013-3-13 15:38 | 显示全部楼层
学习了 跟我用的方法差不多 不过截取字符串略有重复
发表于 2013-3-13 15:39 | 显示全部楼层
  1. /// <summary>
  2.         /// 接受数字参数和排序方法参数,进行冒泡排序
  3.         /// </summary>
  4.         /// <param name="num">要进行排序的整数数组</param>
  5.         /// <param name="sortedMethod">排序方法标识:1为升序,2为降序</param>
  6.         public static void ExecuteSortedMethod(int[] num, int sortedMethod)
  7.         {
  8.             if (sortedMethod == 1)      //升序排列
  9.             {
  10.                 for (int i = 0; i < num.Length -1; i++)
  11.                 {
  12.                     for (int j = 0; j < num.Length - 1 - i; j++)
  13.                     {
  14.                         if (num[j] > num[j + 1])
  15.                         {
  16.                             int temp = num[j];
  17.                             num[j] = num[j + 1];
  18.                             num[j + 1] = temp;
  19.                         }
  20.                     }
  21.                 }
  22.             }
  23.             if (sortedMethod == 2)      //降序排列
  24.             {
  25.                 for (int i = 0; i < num.Length - 1; i++)
  26.                 {
  27.                     for (int j = 0; j < num.Length - 1 - i; j++)
  28.                     {
  29.                         if (num[j] < num[j + 1])
  30.                         {
  31.                             int temp = num[j];
  32.                             num[j] = num[j + 1];
  33.                             num[j + 1] = temp;
  34.                         }
  35.                     }
  36.                 }
  37.             }
  38.         }
复制代码
发表于 2013-3-13 15:39 | 显示全部楼层
记录一下{:5_435:}
发表于 2013-4-19 18:35 | 显示全部楼层

不错 不错 不错{:soso__3922851084632044791_6:}
发表于 2017-2-11 21:35 | 显示全部楼层
好帖就是要顶
发表于 2017-2-11 21:07 | 显示全部楼层
真心顶
发表于 2017-2-11 21:39 | 显示全部楼层
难得一见的好帖
发表于 2017-2-11 21:30 | 显示全部楼层
很好哦
发表于 2017-2-11 21:08 | 显示全部楼层
LZ真是人才
懒得打字嘛,点击右侧快捷回复 【右侧内容,后台自定义】
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Unity开发者联盟 ( 粤ICP备20003399号 )

GMT+8, 2024-4-30 08:28 , Processed in 0.108260 second(s), 28 queries .

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表