저는 Java를 처음 사용하고 exercism.io로 훈련합니다.
오류가 발생하는 이유를 모르겠습니다 (여기에 설명이 아님). 내가 왜 이것을 얻었는지 설명 할 수 있습니까?
/home/zenmoa/snap/exercism/5/exercism/java/raindrops/src/main/java/RaindropConverter.java:13: error: not a statement
result + pling;
^
/home/zenmoa/snap/exercism/5/exercism/java/raindrops/src/main/java/RaindropConverter.java:17: error: not a statement
result + plang;
^
/home/zenmoa/snap/exercism/5/exercism/java/raindrops/src/main/java/RaindropConverter.java:21: error: not a statement
result + plong;
코드 =>
class RaindropConverter {
String convert(int number)
{
String pling = "Pling";
String plang = "Plang";
String plong = "Plong";
String result;
for (int i = 0;i < 3;i++)
{
if(number % 3 == 0 && i == 0)
{
result + pling;
}
else if (number % 5 == 0 && i == 1)
{
result + plang;
}
else if (number % 7 == 0 && i == 2)
{
result + plong;
}
}
return result;
}
}
컴파일러가 하나만 표시하더라도 코드에는 두 가지 문제가 있습니다.
선 result+plong
은 두 문제의 근원입니다. 이것은 쓸모없는 줄이거 나 컴파일러가 말했듯이 진술이 아닙니다. 왜? 메서드를 호출하지 않고 변수를 할당하거나 선언하지 않습니다. + 연산자가 있기 때문에 문자열을 추가해야하지만이 연산자로 무엇을해야할지 알지 못하므로 컴파일 타임에 실패합니다.
다른 문제는 result
변수에 있습니다. 당신은 그것을 할당하지 않았습니다. 이는 +=
아마도 의도 한대로 연산자를 사용할 수 없으며 안전하게 반환 할 수 없음을 의미합니다. 이 문제를 해결하려면 String result="";
선언 만하 는 대신 사용 하십시오.
최종 코드 :
String convert(int number) {
String pling = "Pling";
String plang = "Plang";
String plong = "Plong";
String result = "";
for (int i = 0;i < 3;i++)
{
if(number % 3 == 0 && i == 0)
{
result += pling;
}
else if (number % 5 == 0 && i == 1)
{
result += plang;
}
else if (number % 7 == 0 && i == 2)
{
result += plong;
}
}
return result;
}
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다