c# - 如何从右到左逐个字符读取?
问题描述
我希望你能帮助我,我有一个显示二进制值的标签。
示例:"1000010101"
,这个数据,我正在用一个倒置的 for 来读取它。也就是说,从右到左,二进制数是动态的,所以它不会总是一样的。
到目前为止,这是我的想法,但它没有给我任何价值
for (int i = lbl_conversion.Text.Length; i > 0; i--)
{
if (st[i] == 1)
{
MessageBox("1");
}
else
{
MessageBox("0");
}
}
我想要的是从左到右逐个字符地阅读并知道它是否是"1"
然后"0"
进行比较,有人可以支持我得到那个结果吗?
谢谢你。
解决方案
由于string
s 是从零开始的,因此正确的for
循环将是
// Note "- 1" and ">="
for (int i = lbl_conversion.Text.Length - 1; i >= 0; --i)
if (st[i] == '1') //DONE: comparing with character, not integer
{
MessageBox("1");
}
else
{
MessageBox("0");
}
或者你可以只是字符串(在LinqReverse
的帮助下):
// Let's read each character in reversed order
foreach (char c in lbl_conversion.Text.Reverse())
MessageBox(c.ToString());
推荐阅读
- r - 如何在 r 中将整行向右移动然后删除第一列?
- r - 计算字符数及其位置,直到达到一个值
- c++ - boost::asio::co_spawn 不传播异常
- python - 从类 selenium 访问数据
- node.js - Nodemailer 不适用于 Lambda 函数
- python - PYOMO:使用 IPOPT 给出浮点值的二进制变量
- python - 从 Excel 表为 PCA 准备数据集
- c# - C# 9.0 从类创建记录
- c - 如何在 C 中打印字符串或整数?
- django - ModuleNotFoundError:没有命名的模块
在尝试让 Django 上 Heroku 时?