问题描述
- java统计字符出现数目的问题
-
public class RandomCharacter {public static char getRandomLowerCaseLetter(){ return getRandomCharacter('a','z'); } }
public class TimesOfAppearence {
public static void main(String[] args){ int n = 0; for(char x:ProductArray()){ System.out.print(x); } System.out.println(); CountLetters(ProductArray(),n); } public static char[] ProductArray(){ char[] array = new char[10]; for(int i=0;i<10;i++){ array[i]=RandomCharacter.getRandomLowerCaseLetter(); } return array; } public static void CountLetters(char[] chars,int j){ for(int i=0;i<chars.length;i++){ if(chars[i]=='v')j++; } System.out.print(j); }
}
想要统计在随机生成字符串中'v'出现的次数,但是出来后的结果不是0就是1,并不正确。不知道问题是不是出在if(char[i]=='v')判断上了?求解,万分感谢!
解决方案
getRandomCharacter在哪里定义的
CountLetters(char[] chars,int j)这个j参数完全没用
for(char x:ProductArray()){
System.out.print(x);
}
System.out.println();
CountLetters(ProductArray(),n);
调用了2次ProductArray,输出的和统计的不是一个数组
时间: 2025-01-28 10:11:45