如何在java中运行for循环?
我想知道为什么这段代码不运行。有什么东西不见了吗 计算给定字符串中的xx个数。我们会说,重叠是允许的,所以xxx包含2个xx 您正在传递str并在函数中使用其长度。但是,在循环中使用了一个局部字符串变量,这似乎是一个逻辑错误 调用此函数时需要传递输入字符串,并使用str函数参数计算匹配项 下面是一个功能示例:如何在java中运行for循环?,java,Java,我想知道为什么这段代码不运行。有什么东西不见了吗 计算给定字符串中的xx个数。我们会说,重叠是允许的,所以xxx包含2个xx 您正在传递str并在函数中使用其长度。但是,在循环中使用了一个局部字符串变量,这似乎是一个逻辑错误 调用此函数时需要传递输入字符串,并使用str函数参数计算匹配项 下面是一个功能示例: class Test { static int countXX( final String str ) { int count = 0; for (
class Test
{
static int countXX( final String str ) {
int count = 0;
for (int i = 0; i < str.length() - 1; i++) {
if (str.substring(i, i + 2).equals("xx")) count++;
}
return count;
}
public static void main (String[] args)
{
final String s = "abcxxx";
final int count = countXX( s );
System.out.println( count );
}
}
下面是一个活生生的例子:您的问题还不清楚。但是,您可以尝试此代码
public static void main(String[] args) {
final int count = countXX("abcxx efjxx xyzxx xx xxxx xx","xx");
System.out.println(count);
}
static int countXX(final String text, final String occurrenceOf){
int count = 0;
int fromIndex=0;
for (int i = 0; i < text.length() - 1; i++) {
int index = text.indexOf(occurrenceOf,fromIndex);
if(index >-1) {
count++;
fromIndex=index+1;
}
}
return count;
}
检查str value当你说代码没有运行时是什么意思?您得到的错误是什么?简单的调试将为您提供问题的答案。您的for循环从0到str.length-1,但是在for循环中,您检查a的内容,您应该通过main方法@Chasuna调用countXX方法
public static void main(String[] args) {
final int count = countXX("abcxx efjxx xyzxx xx xxxx xx","xx");
System.out.println(count);
}
static int countXX(final String text, final String occurrenceOf){
int count = 0;
int fromIndex=0;
for (int i = 0; i < text.length() - 1; i++) {
int index = text.indexOf(occurrenceOf,fromIndex);
if(index >-1) {
count++;
fromIndex=index+1;
}
}
return count;
}