为什么IndexOf不能与StringCompare一起工作?
本文关键字:一起 工作 StringCompare IndexOf 不能 为什么 | 更新日期: 2023-09-27 18:15:37
我得到这个错误
string v = "aeiou";
foreach(int i in lokacija.Naziv) {
if(v.indexOf(lokacija.Naziv[i], StringComparison.CurrentCultureIgnoreCase) = -1)
s+=lokacija.Naziv[i];
}
错误提示"无法从系统转换"。StringComparison to int"。但是我知道有一个方法indexOf(string)的过载,它接受StringComparison类型的参数。那么我该如何解决这个问题呢?
首先,您应该使用==
进行比较。
第二,所有第一个参数为char
的IndexOf
重载,第二个参数为int
。这就是为什么会出现错误。为了使用接收StringComparison
的过载,将第一个参数设置为string
,如下所示:
if (v.indexOf(lokacija.Naziv[i].ToString(), StringComparison.CurrentCultureIgnoreCase) == -1)
BTW,你试图从字符串中删除元音吗?我建议你试试这个
你的循环似乎很奇怪…你是认真的吗?
foreach(string ssub in lokacija.Naziv) {
if(v.indexOf(ssub, StringComparison.CurrentCultureIgnoreCase) = -1)
s+=ssub;
@Johnathan-Lonowski一语中的——你将得到这个版本的String。IndexOf,而不是这个,因为您正在寻找字符串中的字符,而不是一个字符串在另一个字符串中的出现