Java 如何获取包含某个单词的行数?

Java 如何获取包含某个单词的行数?,java,android,android-studio,Java,Android,Android Studio,所以我有一个代码生成表,我一直在尝试让这个代码工作,基本上我想知道有多少行有这个单词,这样我以后就可以使用那个数量的元素,这个代码好像不工作了,也许你们可以看到错误? 代码: 每当我运行函数时,就会出现此错误只有当mTableLayout.getChildCount()为时,循环才会工作。如果您正在搜索数据,那么您不妨迭代数据数组的长度。无论您的视图(mTableLayout)是否正确反映了模型(data),此操作都可以通过只考虑模型更好地将自身与视图隔离开来,这通常是一种很好的做法 publi

所以我有一个代码生成表,我一直在尝试让这个代码工作,基本上我想知道有多少行有这个单词,这样我以后就可以使用那个数量的元素,这个代码好像不工作了,也许你们可以看到错误? 代码:


每当我运行函数时,就会出现此错误

只有当
mTableLayout.getChildCount()
时,循环才会工作。如果您正在搜索
数据
,那么您不妨迭代
数据
数组的长度。无论您的视图(
mTableLayout
)是否正确反映了模型(
data
),此操作都可以通过只考虑模型更好地将自身与视图隔离开来,这通常是一种很好的做法

public int-UntilArraySearch(字符串过滤){
int-tope=0;

对于(int i=0;iReplace
mTableLayout.getChildCount()
mTableLayout.getChildCount()-1
错误似乎很清楚。问题是什么?不,我尝试了“-1”,但效果不好问题是我看不到问题,哈哈,我尝试了-1和另一个循环,没有效果我可以清楚地看到问题在那里
public int UntilArraySearch (String filtro){
    int tope=0;
    for(int i = 0;i<mTableLayout.getChildCount();i++){
        if(data[i].productName.contains(filtro) || data[i].productCode.contains(filtro))
            tope++;
    }
    return tope;
}
 Caused by: java.lang.ArrayIndexOutOfBoundsException: length=52; index=52
for(int i = 0;i<data.length;i++){
    if(data[i].productName.contains(filtro) || data[i].productCode.contains(filtro))
        tope++;
}