그래서이 방법의 핵심은 100 이상의 온도 배열을 얻는 것입니다. 무엇이 문제입니까? 내 toString에서 이것을 반환하면 blazing []이 존재하지 않는다고 말합니다.잘못된 논리
public int[] above100Degrees()
{
int[] blazing = new int[temps.length];
for(int i = 0; i < temps.length; i++)
{
if(temps[i] > 100)
{
blazing[i] = temps[i];
}
}
return blazing;
}
toString 메소드 :
public String toString()
{
String returnString = "The temperature forecast of week " + WEEK + " is logged in as: ";
for(int i = 0; i < temps.length; i++)
{
returnString += "\t" + temps[i] + "\t";
}
returnString += "\n" + "The number of temperatures below freezing is " + getUnderFreeze() + "." + "\n" +
"The largest difference this week was a net change of " + NetChange() + ".";
for(int i = 0; i < blazing.length; i++)
{
returnString += "The temperature above 100 degrees is " + above100Degrees() + "." + "\n" + "\t" + blazing[i] + "\t";
}
return returnString;
}
출력
Forecast.java:122: error: cannot find symbol
for(int i = 0; i < blazing.length; i++)
^
symbol: variable blazing
location: class Forecast
Forecast.java:124: error: cannot find symbol
returnString += "The temperature above 100 degrees is " + above100Degrees() + "." + "\n" + "\t" + blazing[i] + "\t";
^
symbol: variable blazing
location: class Forecast
2 errors
'blazing'배열은 'toString'메서드에서 선언되지 않고 'above100Degrees'메서드에서 반환 된 배열은 아무 곳에도 저장되지 않습니다. – AntonH
좋아요, "blazing"의 요소를 어떻게 사용합니까, 표시하고 싶습니다 – PatGreens
변수'blazing'가 당신의 toString() 메소드에서 사용할 수없는 것 같습니다. 위에서 작성한 코드에서'blazing '은'above100degrees 메소드'에만 속하는 것으로 보입니다. 'blazing'을 클래스 레벨 변수로 만들어서 다른 곳에서도 볼 수 있습니다. – Durandal