Java 元音和辅音
我很难完成这段关于计算字符串中元音和辅音数量的代码。 当我向类发送一个字符串时,getVouelCount方法和getConstCount方法都被证明是错误的,我相信问题出在这两个方法的for循环中,我尝试用字符串的特定字符调用Isleter方法,但我不确定。我明白了 线程“main”java.lang.NullPointerException/at DCMvowelsAndConsonants.getVouelCount(DCMvowelsAndConsonants.java:30)/at DCMvowelsAndConsonantsDriver.main(DCMvowelsAndConsonantsDriver.java:40)中出现异常 我不确定我是否应该发布驱动程序,因为这已经很大了Java 元音和辅音,java,Java,我很难完成这段关于计算字符串中元音和辅音数量的代码。 当我向类发送一个字符串时,getVouelCount方法和getConstCount方法都被证明是错误的,我相信问题出在这两个方法的for循环中,我尝试用字符串的特定字符调用Isleter方法,但我不确定。我明白了 线程“main”java.lang.NullPointerException/at DCMvowelsAndConsonants.getVouelCount(DCMvowelsAndConsonants.java:30)/at D
public class DCMvowelsAndConsonants
{
String line;
public DCMvowelsAndConsonants()
{
String line = " ";
}
public DCMvowelsAndConsonants(String l)
{
String line = l;
}
public static boolean isLetter(char i)
{
return i == 'a' || i == 'A' || i == 'e' || i == 'E' || i == 'i' || i == 'I' || i == 'o' || i == 'O' || i == 'u' || i == 'U';
}
public int getVowelCount()
{
int vowelCount = 0;
for(int i = 0; i < line.length(); i++)
{
if(isLetter(line.charAt(i)))
vowelCount++;
}
return vowelCount;
}
public int getConstCount()
{
int constCount = 0;
for(int i = 0; i < line.length(); i++)
{
if(!isLetter(line.charAt(i)))
constCount++;
}
return constCount;
}
}
公共类DCMvowelsAndConsonants
{
弦线;
公共DCMvowelsAndConsonants()
{
字符串行=”;
}
公共DCMvowelsAndConsonants(字符串l)
{
弦线=l;
}
公共静态布尔值计数器(字符i)
{
返回i='a'| i='a'| i='e'| i='e'| i='i'| i='i'| i='o'| i='o'| i='u'| i='u'| i='u';
}
public int getVouelCount()
{
int-vouelcount=0;
对于(int i=0;i
更改构造函数以删除“字符串”部分。这就是声明一个局部变量并分配给它,而不是分配给您的成员变量
所以它们应该看起来像:
public DCMvowelsAndConsonants()
{
line = " ";
}
public DCMvowelsAndConsonants(String l)
{
line = l;
}
更改构造函数以删除“字符串”部分。这就是声明一个局部变量并分配给它,而不是分配给您的成员变量 所以它们应该看起来像:
public DCMvowelsAndConsonants()
{
line = " ";
}
public DCMvowelsAndConsonants(String l)
{
line = l;
}
您的问题在于构造函数。您正在构造函数中创建一个新变量。将构造函数替换为:
public DCMvowelsAndConsonants() {
this.line = " ";
}
public DCMvowelsAndConsonants(String l) {
this.line = l;
}
您的问题在于构造函数。您正在构造函数中创建一个新变量。将构造函数替换为:
public DCMvowelsAndConsonants() {
this.line = " ";
}
public DCMvowelsAndConsonants(String l) {
this.line = l;
}
@TimBiegeleisen“我看你的代码没有问题。”然后重新检查他的代码constructors@Tom脸掌。请随意发布您的答案。@TimBiegeleisen我更喜欢寻找一个被愚弄的人,而不是像这里的其他人一样(D:P[不是你:))。@TimBiegeleisen“我看你的代码没有问题。”然后重新检查他的代码constructors@Tom脸掌。请随意发布您的答案。@TimBiegeleisen我更喜欢寻找一个被愚弄的人,而不是像这里的其他人一样(D:P[不是你:))。哈哈哇,这些小错误谢谢you@DanielCharles很乐意帮忙。如果这个答案对你有帮助的话,欢迎接受。哈哈,哇,这些小错误谢谢you@DanielCharles很乐意帮忙。如果这个答案对你有帮助,请随意接受。