检查字符串时出现 dlang 不兼容类型错误

dlang incompatible type error in checking string

我有这个代码来检查字符串是否有 j 个字符

import std.stdio;

void main() {
    const string name = "john";
    for (int i = 0;i < name.length;i++) {
        if (name[i] == "j") {
           writeln("the name variable contain character j");
        }
    }
}

然后我得到一个错误

Performing "debug" build using /Library/D/dmd/bin/dmd for x86_64.
learning ~master: building configuration "application"...
source/app.d(36,13): Error: incompatible types for `(name[cast(ulong)i]) == ("j")`: `immutable(char)` and `string`
/Library/D/dmd/bin/dmd failed with exit code 1.

"j" 是一个字符串。 'j' 是一个字符。 name[i] 也是一个字符,因此您将字符与给出错误的字符串进行比较。

我会使用 indexOf 来实现相同的目的。 indexOf Dlang 函数搜索范围内的字符。