一种使用布尔表达式的方法
用户必须选择2个数字到1)添加2)减去3)乘以4)划分5)退出. 用户条目的2个数字可以为0-9,小数点或负号,而其他任何内容都是错误.我需要创建一种方法来检查用户条目,并使用true或false boolean表达式.我在布尔表达 中放了什么 Console.Write("Enter Number 1: ", num1); num1 = Convert.ToDouble(Console.ReadLine()); Console.Write("Enter Number 2: ", num2); num2 = Convert.ToDouble(Console.ReadLine()); if (true) { } switch (input) { case 1: Console.WriteLine("\tResults: {0}", Add(num1, num2)); break; case 2: Console.W
6 2024-04-26
编程技术问答社区
C# byte[]到List<bool>。
从bool []到字节[]:将bool []转换为字节[] 但是我需要将一个字节[]转换为列表中的第一个项目是LSB. 我尝试了下面的代码,但是在转换为字节并再次回到布尔时,我有两个完全不同的结果... public List Bits = new List(); public ToBools(byte[] values) { foreach (byte aByte in values) { for (int i = 0; i
10 2024-04-25
编程技术问答社区
LINQ二元列表的三元结果
假设我有一个二进制参数列表(实际上,它是复选框'IsChecked.Value属性的列表).我正在尝试获得bool?(三元)结果: IS true如果所有列表中的元素为true IS false如果所有列表中的元素为false 在所有其他情况下 到现在为止或null. 这是我的代码: bool checkTrue = myListOfBooleans.All(l => l); bool checkFalse = myListOfBooleans.All(l => !l); bool? result = (!checkTrue && !checkFalse) ? null : (bool?)checkTrue; 如何仅在列表上的一个迭代中实现它? 解决方案 您可以使用Aggegrate 来做到这一点 public bool? AllSameValue(List myListOfBooleans) { if(myListOfBo
6 2024-04-24
编程技术问答社区
不是所有的代码路径都会返回一个值(bools)。
我正在为经验创建消息传递服务应用程序.但是,我偶然发现了以前遇到的错误.这是我的方法: bool userExists(string pcName) { string[] files = Directory.GetFiles(usersFile); foreach (string fileName in files) { if (fileName == pcName) { return true; } else { return false; } } } 如您所见,此方法在文件夹中是否存在用户的TXT文件上返回是或否答案.现在,对我来说,所有代码路径都返回一个值.这是有道理的,显然,编译器的思
6 2024-04-24
编程技术问答社区
向数据库写入位值
我正在尝试将一些位值(是或否)写入我的数据库中的"处理"字段.我目前正在尝试通过传递bool值来做到这一点,但是我遇到了一个错误,说不能从类型Varchar转换为BIT.有人可以看到我的逻辑发生了什么吗? protected void CheckBoxProcess_CheckedChanged(object sender, EventArgs e) { bool update; bool trueBool = true; bool falseBool = false; string checkedString = "UPDATE SecureOrders SET processed = '%" + trueBool + "%' WHERE fName LIKE '%" + DefaultGrid.SelectedRow.Cells[2].Text + "%' AND lName LIKE '%
10 2024-04-23
编程技术问答社区
用一组8个布尔运算找到正确组合的最快方法
我有一组布尔值:x1, y1, z1, x2, z2, x3, y3, z3每个布尔是正确的.与其编写数十个if语句以检查正确/错误的组合,而是最有效,最快的方法是发现正确和错误的正确组合?: if(x1 == true && y1 == true && z1 == true && x2 == true && z2 == true && x3 == true && y3 == true && z3 == true) { //do stuff if this is correct combination } else if(x1 == false && y1 == true && z1 == true && x2 == true && z2 == true && x3 == true && y3 == true && z3 == true) { //do stuff if this is correct combinatio
6 2024-04-22
编程技术问答社区
Flutter-如何在 Flutter 项目的共享首选项中保存 bool 值?
现在已经处理了一个星期. 我不知道如何在共享的偏好中节省布尔值.我真的需要多个项目. 有人可以向我展示,我如何在代码中保存checkboxlisttile的bool值? 只需修改我的代码,请:) import 'package:flutter/material.dart'; import 'package:shared_preferences/shared_preferences.dart'; import 'package:flutter/foundation.dart'; import 'package:flutter/src/material/checkbox_list_tile.dart'; void main() => runApp(const MyApp()); class MyApp extends StatelessWidget { const MyApp({super.key}); @override Widget build(
10 2024-04-22
编程技术问答社区
bool*在C#中的用处
我可以以任何有意义的方式使用bool*.我将如何将bool*转换为byte,或在字节中存储bool* 我的目标是在我的项目中管理自己的记忆,这些细节并不重要,只是ID喜欢做的事情.现在,我希望能够存储自己的变量,并且我碰巧需要存储一个布尔值.如何使用unsafe和a byte*,存储此布尔值并最好地利用我的空间?理想情况下,将4位存储在字节中. 解决方案 在C#中,您通常不会使用bool*,这是您只能在不安全的代码中使用的东西(这会带来许多其他内容,例如固定对象等). bool*将是布尔值的指针.指针长4个字节,无法在没有损失的情况下转换为字节. 您为什么要这样做?您在哪里遇到这个?通常,除非您有非常具体的需求(即API调用,但是可以使用P/Invoke解决). 编辑:(因为您编辑了Q.) 以下代码段向您展示了如何获取布尔变量的地址以及如何将指针转换为int(不可能转换为byte,我们需要四个字节). unsafe { // get pointer
12 2024-04-21
编程技术问答社区
在If语句中错误地评估了Bool
只是好奇心 我在代码上有这个问题. e被评估为false(我知道通过在db中查看数据而变得错误),但是IF语句不在乎,并假定是真实的,并且正在尝试投掷例外. 有什么想法为什么? 编辑: 没有;在第16行的末尾. 值false是正确的,我已经检查了数据库,并且是 纠正false,那是预期的 没想到的是得到例外 是的,使用{}工作正常.但是我想知道为什么以这种方式不是 工作. 是的,干净,建造,重建,一切,并获得相同的 不,我在调试时不会更改代码.我的解决方案不在x64下,我无法进行更改 解决方案 我最近看到了一个非常相似的问题,但我找不到它.当我不在寻找时,这就是我从中记得的,以防万一它有助于减轻您的思想: 症状是: 通过调试器逐步浏览代码正在停止在不应执行的行上 当在调试器之外运行时,代码行是实际上未执行的 在有问题的代码线周围添加卷曲括号解决了问题. 原因与支持启用调试的发行版中发出的额外OP代码有关,以支持
2 2024-04-21
编程技术问答社区
向SQL Server存储过程传递一个布尔型参数
我早些时候问了这个问题,我以为我发现了问题所在,但我没有.我遇到问题,将布尔参数传递到存储过程中.这是我的C#代码: public bool upload = false; protected void showDate(object sender, EventArgs e) { if (Radio1.Checked) { upload = true; Radio2.Checked = false; date_div.Visible = true; date_div2.Visible = false; } } protected void getMonthList() { selectedYear = year.SelectedValue.ToString(); SqlConnection connection = n
6 2024-04-21
编程技术问答社区
布尔vs.枚举键入"新或二手"
我有一个也许是一个愚蠢的问题...我试图确定什么是键入价值为"新"或"二手"的属性的最佳方法.我是使用enum还是应该选择boolean(例如isnew)?如果我使用enum,我应该称呼这种类型和属性名称? (public neworused neworused {get; set;} 显然,使用enum我可以说,声明既不值得的(无,新,使用),enum是更宽敞的未来(尽管人们可以声称没有其他价值观将存在).同样,这种类型和属性的适当名称是什么? 使用boolean - 它非常直接(使用ISNew或Isused) 我知道这很愚蠢,但是我很好奇别人的想法 问候 Z .. 更新 如果您喜欢enum,请评论类型和属性的适当名称(例如public NewUsedType NewOrUsed {get; set;}) 解决方案 您在评论中提到的是"我已经准备好[SIC]有一个条件 - 它是指某物y"二手"时的条件(例如,二手车/书可以在" fair"中,"像
2 2024-04-20
编程技术问答社区
将列表<boolean>转换为字符串
我有一个带有92个布尔值的布尔列表,我希望将列表转换为字符串,我认为我会拿8个布尔值(位),然后将它们放入字节(8位),然后使用ASCII转换转换它是字节值,然后将字符添加到字符串中.但是,经过2个小时的谷歌谷歌,没有运气的ATM.我尝试将列表转换为字节列表,但它也不起作用^^. String strbyte = null; for (int x = 0; x != tmpboolist.Count; x++) //tmpboolist is the 90+- boolean list { //this loop checks for true then puts a 1 or a 0 in the string(strbyte) if (tmpboolist[x]) { strbyte = strbyte + '1'; } else { strbyte = strbyte + '0'; } } //here I
4 2024-04-19
编程技术问答社区
在C#的if语句中检查多个布尔条件的最佳方法
我的代码(c#)上有3个布尔值,int32属性取决于true和false的int32. 与以下陈述相比,以另一种方式完成此操作的最佳方法是: if(a && b && !c) d = 1; if(a && !b && !c) d = 2; //etc.. ect... 编辑:3个布尔值必须具有设置INT32值的所有组合. 编辑2:对于两个不同的布尔比较," D"的值可以相同. 解决方案 最好捕获操作的意图,而不是明确检查布尔值. 例如: public void Check() { if (HasOrdered()) { // do logic } } private bool HasOrdered() { return a && !b && !c; } private bool HasBooked() { return a && b && !c; } 其他解决方案 您可以使用karna
2 2024-04-18
编程技术问答社区
将一个条件作为参数传递
可以像操作一样通过参数传递条件吗? 这是一个例子. public void Test(Action action, Condition condition); ... Test( () => Environment.Exit(0), () => variable == variable2 ); 解决方案 尝试将第二个参数作为类型Func传递.该代码应像您在问题的第二部分中一样工作: public void Text(Action action, Func condition) { if (condition()) action(); } 编辑:请注意,您在使用示例中要做的是创建 closure 包含捕获的变量变量和变量2.您应该以这种方式使用封闭的含义.
4 2024-04-18
编程技术问答社区
为什么要重载true和false而不是定义bool运算符?
我一直在阅读有关在C#中超负荷的过载,我认为我理解了这与定义Bool操作员之间的基本区别.我看到的示例类似: public static bool operator true(Foo foo) { return (foo.PropA > 0); } public static bool operator false(Foo foo) { return (foo.PropA 0); } 据我所知,区别在于,通过单独定义真实和错误,您可以拥有一个既是真实和错误的对象,又不是对的,也不是false: public static bool operator true(Foo foo) { return true; } public static bool operator false(F
2 2024-04-18
编程技术问答社区
为什么Java和C#没有隐式转换为布尔值的功能?
自从我启动Java以来 if (flags & 0x80) { ... } 相反,您必须经历这个疯子: if ((flags & 0x80) != 0) { ... } null和对象是相同的.我知道包括JavaScript(包括JavaScript)允许的其他所有类似C的语言,所以我认为Java只是个傻瓜,但是我刚刚发现C#是相同的(至少对于数字,不知道null/objects): http://msdn.microsoft Library/C8F5XWH7(VS.71).aspx Microsoft是故意将其从C ++更改的,那为什么呢?显然我缺少一些东西.为什么改变(我认为是)世界上最自然的事情可以使其更长的键入?地球到底怎么了? 解决方案 为了清楚起见.它使以下错误只是非法: int x = ...; if (x = 0) // in C: assign 0 to x and always evaluate to false ...
4 2024-04-17
编程技术问答社区
生成随机布尔概率
我只知道如何生成随机的布尔值(true/false). 默认概率为50:50 但是如何使用自己的概率生成真正的错误值? 假设它以40:60或20:80等的概率返回... 解决方案 一种方法是检查Random.Next(100)的返回值是否小于您所需的概率.我不能说出这种方法的真实"随机性". 适当的例子,使用20%的所需概率: Random gen = new Random(); int prob = gen.Next(100); return prob
4 2024-04-17
编程技术问答社区
卡在了函数和布尔运算中
i具有称为firstRun()的函数,在其中,我有两个定义的布尔值filesDeleted和dirsDeleted. 也内部功能i有if (filesDeleted == true && dirsDeleted == true) { 当我尝试调试应用程序时,我会发现错误 - Use of unassigned local variable 'filesDeleted'和Use of unassigned local variable 'dirsDeleted'尝试了很多不同的解决方案,根本无法使用. 这是代码: private void firstRun(bool forceDelete) { string Path = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "myLauncher"); string[] Files = Direct
10 2024-04-17
编程技术问答社区
为什么我不能在C#中使用一个整数作为while循环的条件?
使用下面显示的WALE循环时,我会遇到错误,我不明白为什么: int count = 5; while(count--) //here showing an error { Console.WriteLine("Number : {0}", count); } 但是,在C中,该代码正常工作.我对为什么会遇到这个错误感到有些困惑.谁能解释为什么? 谢谢您的宝贵时间. 解决方案 c#不能定义从int到bool的隐式转换. while环条件必须为bool. 您应该使用while(count-- != 0). 在C#中,您有一个bool类型,该类型接受True或False为值.在C中,除0以外的所有内容都是真实的,0表示null.因此,您可以在C中具有if (1),但是1不是C#中的逻辑表达式. 其他解决方案 c#不允许从int到bool(ean)的隐式铸件.您应该明确地这样做: int count = 5; while(count
8 2024-04-17
编程技术问答社区
将bool比较运算符放在变量中
我想重构以下代码: switch (str) { case " value2; case "= value2; case "==": return value1 == value2; case "!=": return value1 != value2; } 我想将布尔比较操作员放在变量中,然后只使用一次,类似的东西: BoolOperator op; switch (str) { case "
6 2024-04-17
编程技术问答社区