有人可以解释这行代码的作用吗?
for(k=0; k < limit; k++)
{
int index = s.charAt(k) - 'a'; <---> THIS LINE
}
t.myIsWord = true;
为什么 - 'a'?我不明白
答案 0 :(得分:7)
它会将'a'
转换为0
,将'b'
转换为1
,将'c'
转换为2
,依此类推......
答案 1 :(得分:1)
int index = s.charAt(k) - 'a';
在Java中,char可以转换为int。每个角色都有一些int值,但是&#39; a&#39;是0和&#39; b&#39;是1.这些值是不同的(基于ASCII表中的位置)。
获得&#39;为0,&#39; b&#39;如1等,你需要减去&#39; a&#39;从给定的角色。
这就是这一行。