为了账号安全,请及时绑定邮箱和手机立即绑定

if 块如何删除重复字符?

if 块如何删除重复字符?

偶然的你 2022-01-12 16:41:36
你们中的一些人能否向我解释一下 if 部分在这段代码中究竟是如何工作的——public static void main(String[] args) {    Scanner sc = new Scanner(System.in);    System.out.print("Input a word: ");    String word = "Programming in Java.";    String result = "";    for (int i = 0; i < word.length(); i++){        // ***** HERE *****        if (word.indexOf(word.charAt(i)) == i){            result += word.charAt(i);        }        // *****    }    System.out.println(result);}该代码正在删除所有重复的字符,我无法确定它究竟是如何做到的,我想在继续学习之前完全了解它是如何工作的。
查看完整描述

1 回答

?
慕勒3428872

TA贡献1848条经验 获得超6个赞

我推荐你参考String.indexOf(int)Javadoc,它说(部分)

返回此字符串中第一次出现指定字符的索引。

当您说if(word.indexOf(word.charAt(i)) == i)这与说当前是否是当前char的第一次出现时char将其附加到result. 否则不要附加它。因此,只有在首次出现时才会添加字符。


查看完整回答
反对 回复 2022-01-12
  • 1 回答
  • 0 关注
  • 136 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信