C# 中字符串“a”不等于字符“a”?

2024-01-02

所以,我有一种解析表达式的算法。此外,无论是否有括号,都有条件方式。我正在制作表达式并将其放入字符串变量中,例如:

string expression = "6*(3+2)";

然后我让它通过解析函数。在它给我奇怪的结果之后,我去调试解析函数并注意到那里出现了奇怪的事情: 当我从右到左迭代字符串的字符时

for (int i = (expression.Length -1); i>=0; i--) ...

它没有通过条件

if (expression[i].Equals(")")) ...

当表达式[i]显示在“)”上时,因为我在 Visual Studio 的“Locals”部分看到它。 这是为什么? 我需要做的是:

if (expression[i].ToString() == ")") ...

然后我就会得到正确的结果。它不允许我执行 expression[i] == ")" 因为它说我不能在 char 和 string 上应用“==”运算符。

那么,为什么.Equals在“)”时没有通过呢?


这是为什么?

字符与字符串不同。一个字符串是一个sequence的字符。的类型expression[i] is char, not string- 所以你想将它与char文字:

if (expression[i] == ')')

请注意单引号 (')') 而不是您使用的双引号 (")")。单引号用于字符文字;双引号用于字符串文字。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

C# 中字符串“a”不等于字符“a”? 的相关文章

  • 如何读取扩展文件属性/文件元数据

    因此 我按照教程使用 ASP net core 将文件 上传 到本地路径 这是代码 public IActionResult About IList
  • 如何检查QProcess是否正确执行?

    QProcess process sdcompare QString command sdcompare QStringList args sdcompare command sdcompare diff args sdcompare lt
  • 如何修复此错误“GDI+ 中发生一般错误”?

    从默认名称打开图像并以默认名称保存 覆盖它 我需要从 Image Default jpg 制作图形 将其放在 picturebox1 image 上并在 picurebox1 上绘制一些图形 它有效 这不是我的问题 但我无法保存 pictu
  • 将内置类型转换为向量

    我的 TcpClient 类接受vector
  • 互斥体实现可以互换(独立于线程实现)

    所有互斥体实现最终都会调用相同的基本系统 硬件调用吗 这意味着它们可以互换吗 具体来说 如果我使用 gnu parallel算法 使用openmp 并且我想让他们称之为线程安全的类我可以使用boost mutex用于锁定 或者我必须编写自己
  • 存储来自其他程序的事件

    我想将其他应用程序的事件存储在我自己的应用程序中 事件示例 打开 最小化 Word 或打开文件时 这样的事可能吗 运行程序 http msdn microsoft com en us library ms813609 aspx and 打开
  • C# Dns.GetHostEntry 不返回连接到 WiFi 的移动设备的名称

    我有一个 C 中的 Windows 窗体应用程序 我试图获取列表中所有客户端的主机名 下面给出的是 ra00l 来自此链接的代码示例 GetHostEntry 非常慢 https stackoverflow com questions 99
  • C++:.bmp 到文件中的字节数组

    是的 我已经解决了与此相关的其他问题 但我发现它们没有太大帮助 他们提供了一些帮助 但我仍然有点困惑 所以这是我需要做的 我们有一个 132x65 的屏幕 我有一个 132x65 的 bmp 我想遍历 bmp 并将其分成小的 1x8 列以获
  • 批量更新 SQL Server C#

    我有一个 270k 行的数据库 带有主键mid和一个名为value 我有一个包含中值和值的文本文件 现在我想更新表格 以便将每个值分配给正确的中间值 我当前的方法是从 C 读取文本文件 并为我读取的每一行更新表中的一行 必须有更快的方法来做
  • 如何加速 pandas 字符串函数?

    我正在使用 pandas 矢量化 str split 方法来提取从 上的拆分 返回的第一个元素 我还尝试使用 df apply 与 lambda 和 str split 来产生等效的结果 使用 timeit 时 我发现 df apply 的
  • 如何在 Blackberry Cascades 中显示具有特定号码的电话板

    我正在使用带有 C QT 和 QML 的 Blackberry Cascades 10 Beta 3 SDK 以及 Blackberry 10 Dev Alpha Simulator 和 QNX Momentics IDE 并且我正在尝试实
  • std::async 与重载函数

    可能的重复 std bind 重载解析 https stackoverflow com questions 4159487 stdbind overload resolution 考虑以下 C 示例 class A public int f
  • 有人可以提供一个使用 Amazon Web Services 的 itemsearch 的 C# 示例吗

    我正在尝试使用 Amazon Web Services 查询艺术家和标题信息并接收回专辑封面 使用 C 我找不到任何与此接近的示例 所有在线示例都已过时 并且不适用于 AWS 的较新版本 有一个开源项目CodePlex http www c
  • .NET中的LinkedList是循环链表吗?

    我需要一个循环链表 所以我想知道是否LinkedList是循环链表吗 每当您想要移动列表中的 下一个 块时 以循环方式使用它的快速解决方案 current current Next current List First 电流在哪里Linke
  • gcc 的配置选项如何确定默认枚举大小(短或非短)?

    我尝试了一些 gcc 编译器来查看默认枚举大小是否很短 至少一个字节 强制使用 fshort enums 或无短 至少 4 个字节 强制使用 fno short enums user host echo Static assert 4 si
  • 用于 C# 的 TripleDES IV?

    所以当我说这样的话 TripleDES tripledes TripleDES Create Rfc2898DeriveBytes pdb new Rfc2898DeriveBytes password plain tripledes Ke
  • 为什么在setsid()之前fork()

    Why fork before setsid 守护进程 基本上 如果我想将一个进程与其控制终端分离并使其成为进程组领导者 我使用setsid 之前没有分叉就这样做是行不通的 Why 首先 setsid 将使您的进程成为进程组的领导者 但它也
  • 如何在 C# 中调整图像大小同时保持高质量?

    我从这里找到了一篇关于图像处理的文章 http www switchonthecode com tutorials csharp tutorial image editing saving cropping and resizing htt
  • 线程和 fork()。我该如何处理呢? [复制]

    这个问题在这里已经有答案了 可能的重复 多线程程序中的fork https stackoverflow com questions 1235516 fork in multi threaded program 如果我有一个使用 fork 的
  • 英特尔 Pin 与 C++14

    问题 我有一些关于在 C 14 或其他 C 版本中使用英特尔 Pin 的问题 使用较新版本从较旧的 C 编译代码很少会出现任何问题 但由于 Intel Pin 是操作指令级别的 如果我使用 C 11 或 C 14 编译它 是否会出现任何不良

随机推荐

  • 如何堵住此类孔 2

    跟随从here https stackoverflow com questions 58032008 how to plug this type hole 58032339 58032339 我已将 main 中的代码重构为它自己的函数 我
  • 对文件发出 json/jsonp xhr 请求:协议

    我正在编写一个 javascript 应用程序 该应用程序将托管在file 协议 即 应用程序只是位于我硬盘上某个位置的 html css 和 javascript 的文件夹 当我尝试正常的 XHR 请求时 它们由于同源策略问题而失败 所以
  • DataGridView 以编程方式排序

    我创建了从 DataGridViewTextBoxColumn 类派生的自定义 DataGridViewNumericTextBoxColumn 当我打电话时 this HeaderDataGridView Sort Sort Progra
  • 写入套接字输出流而不关闭它

    我想向服务器写入一些消息 每次 仅对于传输 我都会关闭输出流 并在必须发送下一条消息时重新打开它 os write msgBytes os write r n getBytes os flush os close 如何保持该 Socket
  • 主机不更新报告中的数据

    我正在尝试在 Raspberry Pi Pico 上使用 TinyUSB 开发自定义 UPS 并让 UPower 在我的 Ubuntu 主机上发现它 我试图向主机发出充电状态信号 但主机将电池报告为空 UPower 而不是充电 等离子桌面电
  • 如何 JSON.stringify dom 元素?

    如 title 所示 如何对 dom 元素进行 JSON stringify 并将 json 改回 dom 元素 有哪位知道怎么办吗 谢谢 Here is the code var container document querySelec
  • 如何使用 Tkinter after() 方法?

    我在使用时遇到问题after中的方法Tkinter 计划是打印i间隔一秒 我检查了是否after方法合适 但具体不知道 这是代码 coding utf 8 from Tkinter import import time root Tk ro
  • 卡尔曼滤波器:如何在没有“状态转换模型”的情况下使用它?

    我正在使用 Android 手机开发加速度计 我希望过滤掉加速度计返回记录手机移动的可怕噪音 我正在阅读卡尔曼滤波器 因为低通滤波器还不够 但我没有从ACCELERATION k 1 to ACCELERATION k 因为它是用户的动作
  • android 从url下载文件并保存到内存盘

    我尝试从 url 下载文件并将其保存到内存购物车 但我无法理解我的错误是什么 我的代码是 URL url new URL imageURL File file new File fileName long startTime System
  • 即使位于堆栈顶部,有时也会创建 singleTop Activity

    我有一个 Activity 其 launchMode 为 singleTop 在清单中 我的理解是 如果一个 Activity 是 singleTop 并且它位于 Activity 堆栈的顶部 那么使用新 Intent 启动 Activit
  • Python Windows 路径斜杠[重复]

    这个问题在这里已经有答案了 我在 python 脚本中使用目录路径面临一个非常基本的问题 当我从 Windows 资源管理器复制路径时 它使用反斜杠作为路径分隔符 这导致了问题 gt gt gt x D testfolder gt gt g
  • 有没有办法让 @Builder 注释适用于不可变类?

    我正在尝试在 Groovy 中开发一个项目 我一直在查看我的代码并尝试找到可以用更惯用的 Groovy 替换的区域 直到找到解决方案我遇到的另一个问题 https stackoverflow com questions 28355773 i
  • 使 div 向下滑动而不将内容向下推

    我有一个例子HERE http jsfiddle net yGZHC 我不知道如何使 div 向下滑动 但将内容保持在顶部 就像 div 向下滑动时不向下滑动一样 你能帮我解决这个问题吗 你的意思是类似这样吗 http jsfiddle n
  • java中如何从线程传播异常?

    Code outerMethod Override public void run innerMethod throws IOException 在线程中执行的方法会抛出检查异常 IOException 我需要在主线程中处理这个异常 喜欢
  • Twitter Fabric xcode - 上传分发时出错:存档分发错误:-3

    我正在尝试使用适用于 mac 的 Fabric 插件分发新的测试版 网络和代理配置正确 我可以使用浏览器访问需要代理验证的 URL 当我尝试上传应用程序时 该过程结束时出现错误 3 http 错误 400 存档分发错误 3 无法上传发行版
  • 有没有办法防止响应式引导程序占用太多宽度?

    我想使用 bootstrap 的响应式功能 但不适用于 gt 1200px 的布局 在宽度 gt 1200px 的设备上 它应该充当下方的设备尺寸 是否可以调整元视口或添加一些 css 以使最大设备宽度为 1200px 自定义引导程序最好的
  • 在 PropertyGrid 中使用自定义颜色选择器对话框

    在属性网格中默认颜色选择器对话框 https dl dropbox com u 14076298 ShareX 2013 10 mAGsVrcIPn png不允许设置颜色的 alpha 值 我已经做了我自己的颜色选择器对话框 https d
  • 使用主键以外的其他内容作为 RealURL id_field

    在 TYPO3 6 2 站点中 我有以下内容postVarSets在 realurl conf php 中用于 extbase 扩展 postVarSets gt array DEFAULT gt array wba gt array ar
  • 使用 REST Framework 从 Django 中的 POST 获取 JSON 数据

    我正在尝试在 Django 中为带有 Gspread 的 Google 电子表格构建 REST API 我遇到了很多问题 所以如果有人碰巧有完整的示例 请随时分享 好吗 其中一个问题是我正在尝试接收 POST 请求的 JSON 当然 稍后还
  • C# 中字符串“a”不等于字符“a”?

    所以 我有一种解析表达式的算法 此外 无论是否有括号 都有条件方式 我正在制作表达式并将其放入字符串变量中 例如 string expression 6 3 2 然后我让它通过解析函数 在它给我奇怪的结果之后 我去调试解析函数并注意到那里出