草庐IT

整数二分

全部标签

c# - 如何对整数的各个数字求和?

我有一个整数值(例如:723),我想将这个整数中的所有值相加,直到得到一个值。ex:7+2+3=121+2=3我是C#新手。请给我一个很好的答案解释:) 最佳答案 尽管取出底部数字并除以10的解决方案是正确的并且清楚地实现了所需的功能,但如果您知道诀窍,则可以用远更少的代码完成此任务。如果按照您描述的方式对数字求和,直到得到一位数,您得到的结果是原始数字除以9的余数。尝试一下。789-->7+8+9=24-->2+4-->6,并且789=87*9+6因此,如果x是正整数,您只需执行x%9即可解决您的问题。如果你得到零,那么真正的结果

c# - 将列表<int> 转换为连接的整数字符串?

我有一个值为3,99,6的int数组。如何使用linq将数组转换为字符串3,99,6? 最佳答案 int[]list=new[]{3,99,6};strings=string.Join(",",list.Select(x=>x.ToString()).ToArray());编辑,C#4.0在C#4.0中,还有一个重载string.Join,最终允许传递一个IEnumerable或IEnumerable直接地。无需创建数组,也无需调用ToString(),它被隐式调用:strings=string.Join(",",list);对字符

c# - 长整数可以在 32 位系统上工作吗?

如果我理解正确的话,一个int变量正在保存32位,将它限制在-20亿到20亿之间。但是,如果我使用长变量,它将保存为64位,从而可以存储更多数字。我使用的是64位系统,但如果我以64位存储数据,我的代码能否在32位系统上正常运行?谢谢! 最佳答案 你不用担心这个。long值将存储在2个内存地址中。Int64/long将始终为64位,而Int32/int将始终为32位。有一些影响(关于内存空间和性能),但最值得注意的可能是写/读操作在32位系统上不是原子的,但你不应该期望它们无论如何都是原子的,因为c#规范不提供此类保证。无论哪种方式

C# 不可变整数

在Java中,字符串是不可变的。如果我们有一个字符串并对其进行更改,我们将获得由同一变量引用的新字符串:Stringstr="abc";str+="def";//nowstrreferstoanotherpieceintheheapcontaining"abcdef"//while"abc"isstillsomewhereintheheapuntiltakenbyGCIt'sbeensaidint和double在C#中是不可变的。这是否意味着当我们拥有int并稍后更改它时,我们会得到同一个变量“指向”的新int?同样的事情,但有堆栈。inti=1;i+=1;//samething:in

c# - 十进制/双整数 - 向上舍入(不仅仅是最接近的)

您如何四舍五入小数或float到整数。例如……0.0=>00.1=>11.1=>21.7=>22.1=>3等等 最佳答案 简单,使用Math.Ceiling:varwholeNumber=(int)Math.Ceiling(fractionalNumber); 关于c#-十进制/双整数-向上舍入(不仅仅是最接近的),我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/8666069/

C#:将年份列表构建为整数

我想创建一个C#List整数,从1930年到2010年。在我的脑海中,我能想到的唯一方法是使用for或while循环遍历数字之间的每个整数,并将它们分别添加到List中。我知道C#列表有很多有趣的方法,尤其是当您使用Linq时。谁能想出更有效的方法来做到这一点? 最佳答案 Enumerable.Range(1930,81)(MSDNdocs)将为您提供包含所需内容的枚举。第一个参数是起始值,第二个是项目数。您需要81而不是80,因为您需要1930年到2010年(含)。如果您明确希望它作为List,请使用Enumerable.Rang

c# : Why is a cast needed from an Enum to an INT when used in a switch statement? ,枚举是整数

谁能告诉我为什么我需要从我的枚举中转换为Intswitch(Convert.ToInt32(uxView.SelectedValue)){case(int)ViewBy.Client:如果我删除强制转换(int),它会失败并提示我必须使用强制转换。这是我的枚举,枚举是整数....有人知道吗?publicenumViewBy{Client,Customer} 最佳答案 在C#中,enum不仅仅是数字。相反,它们是与类型相关联的数字或在上下文中具有名称的数字。要避免在case语句中进行强制转换,您可以在switch中进行强制转换:swi

c# - 浮点除法返回整数

这个问题在这里已经有了答案:WhydoesintegerdivisioninC#returnanintegerandnotafloat?(8个答案)关闭6年前。我想计算两个float的平均值,但无论输入什么,我都会得到一个整数。我应该怎么做才能使这项工作正常进行?publicclassProgram{publicstaticfloatAverage(inta,intb){return(a+b)/2;}publicstaticvoidMain(string[]args){Console.WriteLine(Average(2,1));}}

整数数组的 C# 哈希码

我有一个内部只是整数数组的类。一旦构造数组永远不会改变。我想预先计算一个好的哈希码,以便可以非常有效地将此类用作字典中的键。数组长度小于30项左右,整数一般在-1000到1000之间。 最佳答案 不是很聪明,但足以满足大多数实际目的:编辑:由于HenkHolterman的评论而更改,谢谢。inthc=array.Length;foreach(intvalinarray){hc=unchecked(hc*314159+val);}如果您需要更复杂的东西,lookhere. 关于整数数组的C

C# - 将 TextBox 绑定(bind)到整数

如何将TextBox绑定(bind)到整数?例如,将单元绑定(bind)到textBox1。publicpartialclassForm1:Form{intunit;publicForm1(){InitializeComponent();}privatevoidForm1_Load(objectsender,EventArgse){textBox1.DataBindings.Add("Text",unit,"???");} 最佳答案 它需要是实例的公共(public)属性;在这种情况下,“this”就足够了:publicintUni