2017-11-21 8 views
-1

을 논리 값으로 변환하고 다음 코드에 오류를 건너 왔어요 수 없습니다 : 나는 오류를 수신하고자바 Bukkit 플러그인 오류 : 부울 [] 그래서 조금 수정했습니다

public boolean getBooleans(String stringOne, int coolNumber) 
{ 
    boolean[] myBooleanArray = new boolean[2]; 

    if(stringOne.length() > 10) 
    { 
     return myBooleanArray[0] = true; 
    } 
    else return myBooleanArray[0] = false; 

    if(coolNumber > 100) 
    { 
     myBooleanArray[1] = true; 
    } 
    else myBooleanArray[1] = false; 

    return myBooleanArray; 
} 

을 I :

return myBooleanArray; 

오류 메시지가 상태 : 나는 그래서 그것을 해결하기 위해 아이디어를 넘어 해요 전에이 오류가 발생 기억하지 않습니다 "형식 불일치 부울에서 변환 할 수 없습니다 [] 논리 값으로"사람이 도움을 줄 수? 감사.

답변

0

귀하의 펑크 턴의 반환 유형은 boolean입니다. 그것을 boolean[]으로 변경하십시오. 당신은 당신의 방법의 중간에 return 문을 제거해야합니다

는, 그들은 boolean (myBooleanArray[0] 또는 myBooleanArray[1]true 인 경우) 대신 boolean[]을 반환합니다.

또한 boolean의 변수는 기본적으로 false이며 따라서이를 명시 적으로 false으로 설정할 필요가 없습니다. 따라서 부품 번호 else은 전혀 필요하지 않습니다.

마지막 기능은 다음과 같습니다

public boolean[] getBooleans(String stringOne, int coolNumber) 
{ 
    boolean[] myBooleanArray = new boolean[2]; 

    if(stringOne.length() > 10) { 
     myBooleanArray[0] = true; 
    } 

    if(coolNumber > 100) { 
     myBooleanArray[1] = true; 
    } 

    return myBooleanArray; 
} 
+0

그래 오, 감사를 고정하는. 따라서 "return myBooleanArray [0] = true;"가 아닌 마지막에 메서드를 반환하는 것이 좋습니다. 그냥 사용해야합니다 : "myBooleanArray [0] = true;" ? – ilostmyshoes

+0

@ilostmyshoes 또한,'else ... = false;는 필요하지 않습니다.'parts :'boolean'는 기본적으로 false입니다. – kotslon