ID = (isChar ? (ID + 1 > 122 ? 65 : ID++) : ID++);
这里的输入可以是转换为INT的int或char.然后我递增ID并增加int或char.问题是,当我输入一个字符时,数字似乎没有改变?
解决方法 在两种情况下都将ID更改为ID 1.你正在丢弃最后执行的赋值增量的变化.作为一般规则,避免复杂表达式中的副作用(例如).他们使整个表达难以处理.这让你绊倒了.
更好的是,事先增加ID,因为你似乎总是增加它:
ID += 1;if (isChar && ID > 122) ID = 65;
要么
ID = (isChar && ID > 121) ? 65 : ID + 1;总结
以上是内存溢出为你收集整理的c# – 嵌套的内联IF语句全部内容,希望文章能够帮你解决c# – 嵌套的内联IF语句所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)