【发布时间】:2014-05-19 08:27:07
【问题描述】:
我有一个“拼贴”类,在这个类中,变量是一个数组
private ArrayList<Fragment>();
在这个作业中,我必须找到一个片段,其中它的名称包含“key” 在以前的类似方法中,我必须找到包含子字符串键的片段数,我使用了这段代码,它似乎有效,但我认为它只会重复找到第一个键
public int countKeys(String key)
{
int keys = 0;
key = "keys";
for (Fragment sm:collage){
if (collage.indexOf(key) != -1){
key = key + 1;
}
}
return keys; //will repeatedly find the first key?
}
在另一种方法中,我尝试仅查找名称包含“键”的第一个片段,我使用以下代码:
public Fragment findFragment(String key)
{
key = "keys";
if (collage.indexof(key) != -1){
return collage();
}
} //add random fragment { start at rand() index? }
但是,此方法给出的错误是它无法找到方法 collage(),如果我删除括号(?),它会恢复错误“不兼容的类型”
我对 java 比较陌生,希望能在这个作业上提供帮助! 谢谢。
【问题讨论】:
-
Collage() 不是你的构造函数吗?如果未找到“键”,是否要返回 Collage 的新实例?
-
也许你想增加循环内的键而不是键? (
keys = keys + 1;? 另外,您可能想检查片段中的 indexOf (sm.name.indexOf("key") != -1也许) -
collage 不是方法,它是对类片段对象实例的引用。
标签: java string substring bluej