buffer.slice(mouse,highlight).distinct
现在,当我执行此操作时,它似乎将.distinct
应用于整个字符串,而不是我使用slice
的选择。 (mouse
和highlight
只是索引位置,buffer
是StringBuilder
)。我只是想知道这是什么原因。
答案 0 :(得分:0)
你的方法是正确的。请参阅以下代码以获得更多说明。 slice()函数为您提供子字符串,因此在您的方法中它将首先找到子字符串然后是不同的。
请按照以下一步一步的方法进行更深入的了解。
val buffer=new StringBuilder
buffer.append("bbbaabbbcccbdbcdbd")
val sl=buffer.slice(2,10)
变量sl包含
sl= baabbbcc
现在你可以对sl变量
应用distinctval result=sl.distinct
最后输出
result= bac
这就是您的单行代码的工作方式。