当前位置: 首页>>代码示例>>C#>>正文


C# HashSet.ToArray方法代码示例

本文整理汇总了C#中HashSet.ToArray方法的典型用法代码示例。如果您正苦于以下问题:C# HashSet.ToArray方法的具体用法?C# HashSet.ToArray怎么用?C# HashSet.ToArray使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在HashSet的用法示例。


在下文中一共展示了HashSet.ToArray方法的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: OnSavedScene

	static void OnSavedScene ()
	{
		var behaviours = GameObject.FindObjectsOfType(typeof(MonoBehaviour));
		var assemblers = new HashSet<PrefabAssembler>();
		foreach(MonoBehaviour b in behaviours)
		{
			if(b.GetType().GetCustomAttributes(typeof(AssembleOnSave), true).Length == 0)
			{
				continue;
			}
			Transform target = b.transform;
			while(target)
			{
				var a = target.GetComponent<PrefabAssembler>();
				if(a)
				{
					assemblers.Add(a);
				}
				target = target.parent;
			}
		}
		if(assemblers.Count != 0)
		{
			PrefabAssembler.IsSaving = true;
			PrefabAssemblerUtility.Assemble(assemblers.ToArray());
			PrefabAssembler.IsSaving = false;
		}
	}
开发者ID:becksebenius,项目名称:prefab-assembler,代码行数:28,代码来源:PrefabAssemblerSaveProcess.cs

示例2: GetSpecialAas

 public string GetSpecialAas()
 {
     Dictionary<char, int> count1 = new Dictionary<char, int>();
     Dictionary<char, int> count2 = new Dictionary<char, int>();
     foreach (string s in specificity){
         char c1 = s[0];
         char c2 = s[1];
         if (!count1.ContainsKey(c1)){
             count1.Add(c1, 0);
         }
         if (!count2.ContainsKey(c2)){
             count2.Add(c2, 0);
         }
         count1[c1]++;
         count2[c2]++;
     }
     HashSet<char> result = new HashSet<char>();
     foreach (char c in count1.Keys){
         if (count1[c] >= 17){
             result.Add(c);
         }
     }
     foreach (char c in count2.Keys){
         if (count2[c] >= 17){
             result.Add(c);
         }
     }
     return new string(result.ToArray());
 }
开发者ID:JurgenCox,项目名称:compbio-base,代码行数:29,代码来源:Enzyme.cs

示例3: Run

 public static void Run()
 {
     using (FastScanner fs = new FastScanner(new BufferedStream(Console.OpenStandardInput())))
     using (StreamWriter writer = new StreamWriter(new BufferedStream(Console.OpenStandardOutput())))
     {
         int n = fs.NextInt();
         HashSet<int> set = new HashSet<int>();
         for (int i = 0; i < n; i++)
         {
             int x = fs.NextInt();
             set.Add(x);
         }
         if (set.Count < 3)
         {
             writer.WriteLine("YES");
         }
         else if (set.Count > 3)
         {
             writer.WriteLine("NO");
         }
         else
         {
             int[] a = set.ToArray();
             Array.Sort(a);
             writer.WriteLine(a[1] - a[0] == a[2] - a[1] ? "YES" : "NO");
         }
     }
 }
开发者ID:dzholmukhanov,项目名称:AlgorithmTraining,代码行数:28,代码来源:FilyaAndHomework371.cs

示例4: GetInstructionOffsets

		public static uint[] GetInstructionOffsets(MethodDef method, IList<MethodSourceStatement> list) {
			if (method == null)
				return null;
			var body = method.Body;
			if (body == null)
				return null;

			var foundInstrs = new HashSet<uint>();
			// The instructions' offset field is assumed to be valid
			var instrs = body.Instructions.Select(a => a.Offset).ToArray();
			foreach (var binSpan in list.Select(a => a.Statement.BinSpan)) {
				int index = Array.BinarySearch(instrs, binSpan.Start);
				if (index < 0)
					continue;
				for (int i = index; i < instrs.Length; i++) {
					uint instrOffset = instrs[i];
					if (instrOffset >= binSpan.End)
						break;

					foundInstrs.Add(instrOffset);
				}
			}

			return foundInstrs.ToArray();
		}
开发者ID:manojdjoshi,项目名称:dnSpy,代码行数:25,代码来源:BodyCommandUtils.cs

示例5: GetTests

        private UnitTestInfo[] GetTests(string path, string[] hintPaths)
        {
            var codeGenDllPath = Assembly.GetExecutingAssembly().Location;

            var codegenDir = Path.GetDirectoryName(codeGenDllPath);
            
            AppDomain loaderDomain = AppDomain.CreateDomain(path, AppDomain.CurrentDomain.Evidence, new AppDomainSetup() { ApplicationBase = codegenDir });
            
            var loader = (TestAssemblyLoader)loaderDomain.CreateInstanceFromAndUnwrap(codeGenDllPath, typeof(TestAssemblyLoader).FullName);

            loader.InitializeLifetimeService();

            HashSet<string> hints = new HashSet<string>(hintPaths) { Path.GetDirectoryName(path) };
            
            loader.Load(path, hints.ToArray());

            UnitTestInfo[] tests = loader.GetTests<XUnitTestDiscoverer>();

            //if no xunit tests were discovered and the assembly is an exe treat as a standalone exe test
            if ((tests == null || tests.Length == 0) && Path.GetExtension(path).ToLowerInvariant() == ".exe")
            {
                tests = loader.GetTests<StandAloneTestDiscoverer>();
            }

            AppDomain.Unload(loaderDomain);

            if (tests.Length > 0)
            {
                CodeGenOutput.Info($"{path}: {tests.Length} tests discovered");
            }

            return tests;
        }
开发者ID:jango2015,项目名称:corefx-tools,代码行数:33,代码来源:UnitTestSelector.cs

示例6: ScriptProjectGenerator

 public ScriptProjectGenerator(string[] _files, HashSet<string> assemblyReferences, ScriptSequence _sequence)
 {
     isCSharp = _sequence.Language.GetType().Name.Contains("CSharp");
     sequence = _sequence;
     files.AddRange(_files);
     references.AddRange(assemblyReferences.ToArray());
 }
开发者ID:komby,项目名称:vixen,代码行数:7,代码来源:ScriptProjectGenerator.cs

示例7: QueryTableDialog

		QueryTableDialog(IEnumerable<string> tables)
		{
			this.tables = new HashSet<string>(tables);
			InitializeComponent();
			tablesList.AddSuggestions(tables.ToArray());
			tablesList.IsDropDownOpen = true;
		}
开发者ID:xyandro,项目名称:NeoEdit,代码行数:7,代码来源:QueryTableDialog.xaml.cs

示例8: ObjectCodeFile

        /// <summary>
        /// Creates a new object code file object.
        /// </summary>
        /// <param name="StartAddress">The load address of the object file.</param>
        /// <param name="Filename">The name of the object file.</param>
        /// <param name="Architecture">The targeted architecture of the object file.</param>
        /// <param name="Sections">The sections of the object file.</param>
        /// <param name="SymbolTable">The symbol table of the object file.</param>
        /// <param name="Code">The source code of the object file.</param>
        public ObjectCodeFile(long StartAddress, String Filename, String Architecture,
            Section[] Sections, SymbolTable SymbolTable, CodeUnit[] Code)
        {
            this.loadAddress  = StartAddress;
            this.Filepath     = Filename;
            this.Architecture = Architecture;
            this.Sections     = Sections;
            this.SymbolTable  = SymbolTable;
            this.Code         = Code;

            this.RequestedLoadAddress = StartAddress;

            // Sum loaded sections' sizes
            if (this.Sections != null)
            this.Size = this.Sections.Sum(
                sec => sec.Flags.HasFlag(SectionFlags.Load) ? (long)sec.Size : 0);

            // Get unique source file paths
            var tmpFiles = new HashSet<string>();

            foreach (CodeUnit unit in this.Code) {
                tmpFiles.Add(unit.SourceFilepath.Trim());
            }
            this.SourceFiles = tmpFiles.ToArray();
        }
开发者ID:jsren,项目名称:DebugOS,代码行数:34,代码来源:ObjectCodeFile.cs

示例9: InitAssemblyCache

		private void InitAssemblyCache()
		{
			if (this.assemblies != null) return;

			// Retrieve a list of all loaded, non-disposed Assemblies
			Assembly[] loadedAssemblies = 
				DualityApp.PluginLoader.LoadedAssemblies
				.Where(a => !DualityApp.PluginManager.DisposedPlugins.Contains(a))
				.ToArray();

			// Aggregate selectable assemblies based on Duality core Assemblies and their dependencies
			HashSet<Assembly> selectableAssemblies = new HashSet<Assembly>();
			foreach (Assembly coreAssembly in DualityApp.GetDualityAssemblies())
			{
				selectableAssemblies.Add(coreAssembly);

				AssemblyName[] referencedAssemblies = coreAssembly.GetReferencedAssemblies();
				foreach (AssemblyName reference in referencedAssemblies)
				{
					string shortName = reference.GetShortAssemblyName();
					Assembly dependency = loadedAssemblies.FirstOrDefault(a => a.GetShortAssemblyName() == shortName);
					if (dependency != null)
						selectableAssemblies.Add(dependency);
				}
			}

			this.assemblies = selectableAssemblies.ToArray();
			this.namespaces = this.assemblies
				.SelectMany(a => { try { return a.GetExportedTypes(); } catch (Exception) { return new Type[0]; } })
				.Select(t => t.Namespace)
				.Distinct()
				.Where(n => !string.IsNullOrEmpty(n))
				.ToArray();
		}
开发者ID:SirePi,项目名称:duality,代码行数:34,代码来源:TypeBrowserTreeModel.cs

示例10: GetUniquePillars

 private static BuildingInfo[] GetUniquePillars()
 {
     var pillarsTemp = new HashSet<BuildingInfo>();
     foreach (var buildingInfo in Util.GetAllPrefabs().SelectMany(prefab => prefab.GetPillars()))
     {
         pillarsTemp.Add(buildingInfo);
     }
     for (uint i = 0; i < PrefabCollection<BuildingInfo>.LoadedCount(); i++)
     {
         var prefab = PrefabCollection<BuildingInfo>.GetLoaded(i);
         if (prefab == null || prefab.m_buildingAI.GetType() != typeof(BuildingAI))
         {
             continue;
         }
         var asset = PackageManager.FindAssetByName(prefab.name);
         var crpPath = asset?.package?.packagePath;
         var directoryName = Path.GetDirectoryName(crpPath);
         if (directoryName == null)
         {
             continue;
         }
         var pillarConfigPath = Path.Combine(directoryName, "Pillar.xml");
         if (!File.Exists(pillarConfigPath))
         {
             continue;
         }
         pillarsTemp.Add(prefab);
     }
     return pillarsTemp.ToArray();
 }
开发者ID:earalov,项目名称:Skylines-NoPillars,代码行数:30,代码来源:Pillars.cs

示例11: drawCodeGenerators

        static void drawCodeGenerators(CodeGeneratorConfig codeGeneratorConfig, Type[] codeGenerators)
        {
            EditorGUILayout.Space();
            EditorGUILayout.LabelField("Code Generators", EditorStyles.boldLabel);

            var enabledCodeGenerators = new HashSet<string>(codeGeneratorConfig.enabledCodeGenerators);

            var availableGeneratorNames = new HashSet<string>();
            foreach (var codeGenerator in codeGenerators) {
                availableGeneratorNames.Add(codeGenerator.Name);
                var isEnabled = enabledCodeGenerators.Contains(codeGenerator.Name);
                isEnabled = EditorGUILayout.Toggle(codeGenerator.Name, isEnabled);
                if (isEnabled) {
                    enabledCodeGenerators.Add(codeGenerator.Name);
                } else {
                    enabledCodeGenerators.Remove(codeGenerator.Name);
                }
            }

            foreach (var generatorName in codeGeneratorConfig.enabledCodeGenerators.ToArray()) {
                if (!availableGeneratorNames.Contains(generatorName)) {
                    enabledCodeGenerators.Remove(generatorName);
                }
            }

            var sortedCodeGenerators = enabledCodeGenerators.ToArray();
            Array.Sort(sortedCodeGenerators);
            codeGeneratorConfig.enabledCodeGenerators = sortedCodeGenerators;
        }
开发者ID:ariessanchezsulit,项目名称:Entitas-CSharp,代码行数:29,代码来源:CodeGeneratorPreferencesDrawer.cs

示例12: ExtractParameters

        static string[] ExtractParameters(string script)
        {
            var ps = ParameterExtractor.Matches(script);
            if (ps.Count == 0) return null;

            var ret = new HashSet<string>();

            for (var i = 0; i < ps.Count; i++)
            {
                var c = ps[i];
                var ix = c.Index - 1;
                if (ix >= 0)
                {
                    var prevChar = script[ix];
                    
                    // don't consider this a parameter if it's in the middle of word (ie. if it's preceeded by a letter)
                    if (char.IsLetterOrDigit(prevChar) || prevChar == '_') continue;
                    
                    // this is an escape, ignore it
                    if (prevChar == '@') continue;
                }

                var n = c.Groups["paramName"].Value;
                if (!ret.Contains(n)) ret.Add(n);
            }

            return ret.ToArray();
        }
开发者ID:deepakverma,项目名称:StackExchange.Redis,代码行数:28,代码来源:ScriptParameterMapper.cs

示例13: many

 public static int[] many(int x)
 {
     ICollection<int> set = new HashSet<int>();
     while (set.Count < x)
         set.Add(RANDOM.Next(1, 50));
     return set.ToArray();
 }
开发者ID:bjornebjornson,项目名称:LottoNh2,代码行数:7,代码来源:ZahlRandomiser.cs

示例14: Run

 public override void Run(List<Point> points, List<Line> lines, List<Polygon> polygons, ref List<Point> outPoints, ref List<Line> outLines, ref List<Polygon> outPolygons)
 {
     HashSet<PointComparer> hashP = new HashSet<PointComparer>();
     for (int i = 0; i < points.Count; ++i)
         hashP.Add(new PointComparer(points[i]));
     PointComparer[] res = hashP.ToArray();
     points.Clear();
     for (int i = 0; i < res.Length; ++i)
         points.Add(res[i].p);
     List<bool> visited = new List<bool>();
     for (int i = 0; i < points.Count; ++i)
         visited.Add(false);
     for (int i = 0; i < points.Count; ++i)
     {
         for (int j = 0; j < points.Count; ++j)
             if (!visited[j])
                 for (int k = 0; k < points.Count; ++k)
                     if (!visited[k])
                         for (int l = 0; l < points.Count; ++l)
                             if (!visited[l] && (valid(i, j, k, l)))
                             {
                                 Enums.PointInPolygon state = HelperMethods.PointInTriangle(points[i], points[j], points[k], points[l]);
                                 if (state == Enums.PointInPolygon.Inside || state == Enums.PointInPolygon.OnEdge)
                                     visited[i] = true;
                             }
     }
     outPoints = new List<Point>();
     for (int i = 0; i < points.Count; ++i)
         if (!visited[i])
             outPoints.Add(points[i]);
     return;
 }
开发者ID:PlastecProfiles,项目名称:Computational-Geometry,代码行数:32,代码来源:ExtremePoints.cs

示例15: IndexDocuments

        public override void IndexDocuments(
			AbstractViewGenerator viewGenerator, 
			IEnumerable<dynamic> documents, 
			WorkContext context, 
			IStorageActionsAccessor actions, 
			DateTime minimumTimestamp)
        {
            actions.Indexing.SetCurrentIndexStatsTo(name);
            var count = 0;
            Func<object, object> documentIdFetcher = null;
            var reduceKeys = new HashSet<string>(StringComparer.InvariantCultureIgnoreCase);
            var documentsWrapped = documents.Select(doc =>
            {
                var documentId = doc.__document_id;
                foreach (var reduceKey in actions.MappedResults.DeleteMappedResultsForDocumentId((string)documentId, name))
                {
                    reduceKeys.Add(reduceKey);
                }
                return doc;
            });
            foreach (var doc in RobustEnumeration(documentsWrapped, viewGenerator.MapDefinition, actions, context))
            {
                count++;

                documentIdFetcher = CreateDocumentIdFetcherIfNeeded(documentIdFetcher, doc);

                var docIdValue = documentIdFetcher(doc);
                if (docIdValue == null)
                    throw new InvalidOperationException("Could not find document id for this document");

                var reduceValue = viewGenerator.GroupByExtraction(doc);
                if (reduceValue == null)
                {
                    logIndexing.DebugFormat("Field {0} is used as the reduce key and cannot be null, skipping document {1}", viewGenerator.GroupByExtraction, docIdValue);
                    continue;
                }
                var reduceKey = ReduceKeyToString(reduceValue);
                var docId = docIdValue.ToString();

                reduceKeys.Add(reduceKey);

                var data = GetMapedData(doc);

                logIndexing.DebugFormat("Mapped result for '{0}': '{1}'", name, data);

                var hash = ComputeHash(name, reduceKey);

                actions.MappedResults.PutMappedResult(name, docId, reduceKey, data, hash);

                actions.Indexing.IncrementSuccessIndexing();
            }

            actions.Tasks.AddTask(new ReduceTask
            {
                Index = name,
                ReduceKeys = reduceKeys.ToArray()
            }, minimumTimestamp);

            logIndexing.DebugFormat("Mapped {0} documents for {1}", count, name);
        }
开发者ID:dplaskon,项目名称:ravendb,代码行数:60,代码来源:MapReduceIndex.cs


注:本文中的HashSet.ToArray方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。