首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >隐式转换错误

隐式转换错误
EN

Stack Overflow用户
提问于 2011-03-09 12:24:24
回答 3查看 425关注 0票数 0

请也给我建议一下改一下。无法将类型'System.Collections.Generic.List‘隐式转换为System.Collections.Generic.IEnumerable。存在显式转换(是否缺少强制转换?)

代码语言:javascript
复制
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace MyNamespace
{
    class Program
    {
        static void Main(string[] args)
        {
            List<int> eventIDs = new List<int>() { 53,90,344,2223,2225,4497,5512};
            MatchNumbers(eventIDs,2200,2300);

        }
        public static void MatchNumbers(IEnumerable<uint> eventsSet, int lowerBound, int upperBound)
        {
            if (upperBound < lowerBound)
                throw new Exception("Lower bound cant be bigger");
            List<int> itemSet = (List<int>)eventsSet;
            for (int i = lowerBound; i <= upperBound; i++)
            {
                int result = itemSet.BinarySearch(i);
                if (result >= 0)
                    Console.WriteLine("Found{0}", i);
            }
        }

    }
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-09 12:27:48

也请给我提个改的建议..

执行以下任一操作:

  • 使您的方法接受IEnumerable<int>而不是
    • 而不是IEnumerable<int>

int表示32位整数的有符号范围,而uint表示32位整数的无符号范围。由于值范围的不同,您不能同时交换泛型类型intuint的类。

票数 6
EN

Stack Overflow用户

发布于 2011-03-09 12:25:34

问题是你不能把uint转换成int

票数 0
EN

Stack Overflow用户

发布于 2011-03-09 12:33:44

代码语言:javascript
复制
List<uint> itemSet = eventsSet.toList();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5241279

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档