首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >C#中两个左尖括号“<<”是什么意思?

C#中两个左尖括号“<<”是什么意思?
EN

Stack Overflow用户
提问于 2018-01-25 07:15:28
回答 2查看 0关注 0票数 0

我在看MVC 2的源代码:

[Flags]
public enum HttpVerbs {
    Get = 1 << 0,
    Post = 1 << 1,
    Put = 1 << 2,
    Delete = 1 << 3,
    Head = 1 << 4
}

我只是好奇双左角括号<<是什么。

EN

回答 2

Stack Overflow用户

发布于 2018-01-25 15:31:44

这将是左移位运算符。

对于每个左移,该值实际上乘以2. 例如,写入value << 3将乘以8。

它在内部真正做的是把所有剩下的值的实际位移到一个地方。所以,如果你有值12(十进制),在二进制是00001100; 把它移到一个地方会变成00011000,或者24。

票数 0
EN

Stack Overflow用户

发布于 2018-01-25 17:03:49

当你写

1 << n

你将位组合转换000000001n剩下的时间,从而放入n2的指数:

2^n

所以

1 << 10

真正的是

1024

对于说5项的列表,你for会循环32次。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100005233

复制
相关文章

相似问题

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