【发布时间】:2012-10-24 04:58:21
【问题描述】:
大家好,我遇到了家庭作业问题,它要求我找到字符串的所有不同子字符串。 我已经实现了一种方法,它会告诉你字符串的所有子字符串,但我需要帮助弄清楚如何不计算一个已经被计算为子字符串的子字符串,因为分配是要找到不同的子字符串。
public int printSubstrings1(int length)
{
for(int i=0; i<text.length()-length+1;i++)
{
String sub = text.substring(i,length+i);
counter++;
}
return counter;
}
在这里,我从给定的字符串中传递我想要的子字符串的长度。 我正在通过另一种方法做到这一点。
所以给出的示例字符串是“fred”,而不是不同的子字符串将是 10。我的方法将输出正确答案,因为字符串不包含任何重复的字母。我被困在我确实得到重复子字符串的部分。
如果我输入弗雷德。这是我的方法将输出的内容
长度 1
f
r
电子
d
长度 2
FR
重新
编
长度 3
免费
红色
长度 4
弗雷德
【问题讨论】:
-
将它们放在Set 中——“Set 是不包含重复元素的集合”
-
好主意谢谢你的意思是数组正确。比我如何检查字符串中是否已经存在。因为数组没有 .在它的类中包含方法。
-
你能提供Set的例子吗?
-
java.util.HashSet,例如。