C#入门经典3中的集合,比较,转换这一章的内容!
public Card(Suit newSuit, Rank newRank)
{
suit=newSuit;
rank=newRank;
}
..............................
public override int GetHashCode()
{
return 13*(int)rank + (int)suit;
这是一副扑克牌.suit是花式,rank是A到K.13张牌.
这句返回的是什么意思?return 13*(int)rank + (int)suit;
顺便问个问题.我是个没基础的新手.直接学C#的.学到这本书的第11章.感觉挺痛苦的.尤其是这个扑克牌程序.集合也学的很迷糊.
请问集合,比较,转换这些内容重要吗?我是要搞懂才能往下学.还是可以把这些东西跳掉.
望高人指点.
------解决方案--------------------重要,但如果暂时没搞明白也不要紧,以后用到的时候再回来学
希望你能了解,很多知识不是因为学而掌握的,而是因为要用才去学
------解决方案--------------------Suit 和Rank 是什么类型的 都是枚举么?
------解决方案--------------------return 13*(int)rank + (int)suit;
返回13*rank+suit的值
这里将rank和suit转换成INT才能进行运算.
------解决方案--------------------好像是返回的是52张牌里让每张牌的一个特定值,例如设定红桃为1,则红桃3
的值是40,我们要想知道那一张牌,只要知道他的值,比如40,除以13,得到的余数部分就是花式,结果是牌的点数。
我是这样认为的,不知道对不对。