JAVA-이중 조건 오류 인 경우

플라 비우스

"백만장자가되고 싶은 사람"게임을 만들어야합니다. 게임은 파일로 작업해야합니다 (모든 정보가있는 사용자 파일 작성 / 작성). 질문은 txt 파일에서 무작위로 선택되어 "intrebareSIraspuns [6] [15]"(6-> 1 개 질문, 4 개 답변, 1 개 정답; 15 개-> 질문)에 저장됩니다. 질문의 이름은 "questionNr"이며 각 정답 이후에 증가합니다. 내 문제는 사용자가 질문에 대한 정답을 제공해야 할 때입니다. 사용자는 콘솔에 대답의 해당 문자 (A, B, C, D)를 입력해야하지만 정답을 입력하면 결과가 항상 잘못됩니다. 문제가있는 곳과 콘솔의 출력을 확인하기 위해 조금 더 길게 만든 올바른 질문 확인을위한 코드를 넣을 것입니다.

다음은 코드입니다.

    /*                      *
     *                      *
     *     ANSWER CHECK     *
     *                      *
     *                      *
     */

public int check()
{
    Scanner input=new Scanner(System.in);

    int ret=0;

    System.out.println("Type your answer: ");
    userAnswer=input.next();


    if(intrebareSIraspuns[5][questionNr].equals(intrebareSIraspuns[1][questionNr]))
    {
        ret=1;
    }

    if(intrebareSIraspuns[5][questionNr].equals(intrebareSIraspuns[2][questionNr]))
    {
        ret=2;
    }

    if(intrebareSIraspuns[5][questionNr].equals(intrebareSIraspuns[3][questionNr]))
    {
        ret=3;
    }

    if(intrebareSIraspuns[5][questionNr].equals(intrebareSIraspuns[4][questionNr]))
    {
        ret=4;
    }

    System.out.println("Return = " + ret);
    System.out.println("User Answer =" + userAnswer + ".");

    if((userAnswer=="A") && (ret==1))
    {
        answerVar=1;
        System.out.println("The corect answer is: A. " + intrebareSIraspuns[1][questionNr]);
    }
    else
        if((userAnswer=="B") && (ret==2))
        {
            answerVar=2;
            System.out.println("The corect answer is: B. " + intrebareSIraspuns[2][questionNr]);
        }
        else
            if((userAnswer=="C") && (ret==3))
            {
                answerVar=3;
                System.out.println("The corect answer is: C. " + intrebareSIraspuns[3][questionNr]);
            }
            else
                if((userAnswer=="D") && (ret==4))
                {
                    answerVar=4;
                    System.out.println("The corect answer is: D. " + intrebareSIraspuns[4][questionNr]);
                }
                else
                {
                    answerVar=5;
                    System.out.println("Your answer is wrong!");
                    if(ret==1)
                    {
                        answerVar=6;
                        System.out.print(" The corect answer was: A. " + intrebareSIraspuns[1][questionNr] + "\n");
                    }
                    else
                        if(ret==2)
                        {
                            answerVar=7;
                            System.out.print(" The corect answer was: B. " + intrebareSIraspuns[2][questionNr] + "\n");
                        }
                        else
                            if(ret==3)
                            {
                                answerVar=8;
                                System.out.print(" The corect answer was: C. " + intrebareSIraspuns[3][questionNr] + "\n");
                            }
                            else
                                if(ret==4)
                                {
                                    answerVar=9;
                                    System.out.print(" The corect answer was: D. " + intrebareSIraspuns[4][questionNr] + "\n");
                                }
                }
    input.close();
    return answerVar;
}

콘솔 출력은 다음과 같습니다.

0081 2004 년 누가 'EastEnders'로 돌아와 전국 전력망에 560 메가 와트 전력 급증을 일으켰습니까? 

    A. 불결한 Fred 

    B. Smutty Sam 

    C. Grubby Gordon 

    D. Dirty Den 

ANSWER. Dirty Den 

답을 입력하십시오. 
D 

Return = 4 

사용자 답변 = D. 

당신의 대답은 틀 렸습니다! 

 핵심적인 대답은 다음과 같습니다. D. Dirty Den
수레 쉬 아타

문자열은 항상 같음과 비교해야합니다.

여기에 이유를 썼습니다. ==가 String에서 작동하지 않는 이유는 무엇입니까?

  if((userAnswer.equals("B")) && (ret==2)).

그리고 나머지 장소도 변경됩니다.

또한 귀하의 경우에는 char 사용을 고려하십시오. 문자열이 아닙니다. 당신이 사용하는 단일 문자로 취급되기 때문에 char또는를 Enum프로그램의 성능이 향상됩니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

조건 오류 인 경우 ActionScript 3

분류에서Dev

조건 오류 인 경우 Awk

분류에서Dev

Java 바이트 코드의 조건 인 경우 반전

분류에서Dev

수식이 여러 조건 인 경우

분류에서Dev

조건이 mysql에서 null 인 경우

분류에서Dev

조건이 항상 참인 경우

분류에서Dev

SQL 조건부 커밋-오류가없는 경우에도 결과 확인

분류에서Dev

Np. 오류를 생성하는 다중 또는 중첩 조건이있는 경우

분류에서Dev

로그인 실패 후 로그인 페이지에 오류 메시지 표시-조건이 작동하지 않는 경우

분류에서Dev

SQL 인 경우 조건

분류에서Dev

Postgresql-데이터가있는 경우 조건부 조인

분류에서Dev

다음 중 하나와 일치하는 경우 조건을 확인하십시오.

분류에서Dev

조건이 True 인 경우 키워드 인수 전달

분류에서Dev

VBA에서 이전 조건이 거짓 인 경우에도 'And'조건 평가

분류에서Dev

if 내에서 조건이 충족되는 경우에만 조건 확인

분류에서Dev

Java에서 조건을 확인하여 오류 발생

분류에서Dev

조건이 참인 경우 동적으로 아이콘 추가

분류에서Dev

조건이 임의의 길이 인 경우 Excel 복합

분류에서Dev

ReactJS 조건이 참인 경우에만 가져 오는 방법은 무엇입니까?

분류에서Dev

Laravel Eloquent- "with"의 "where"조건이 참인 경우에만 관계 요소 가져 오기

분류에서Dev

조건이 확인되지 않은 경우 개체를 만들지 마십시오.

분류에서Dev

LocalDateTIme가 null이 조건에있는 경우 확인

분류에서Dev

Xamarin : 조건이 false 인 경우 단추 숨기기

분류에서Dev

조건이 참인 경우 문서 제외

분류에서Dev

반응 : 조건이 참인 경우에만 자식 렌더링

분류에서Dev

조건이 참인 경우에만 TableView의 UIStoryboardSegue

분류에서Dev

파일 확인 조건이 존재하는 경우 PHP

분류에서Dev

If / Then-조건이 거짓 인 경우에도 실행

분류에서Dev

행에서 조건이 TRUE 인 경우 (그룹화 됨)

Related 관련 기사

  1. 1

    조건 오류 인 경우 ActionScript 3

  2. 2

    조건 오류 인 경우 Awk

  3. 3

    Java 바이트 코드의 조건 인 경우 반전

  4. 4

    수식이 여러 조건 인 경우

  5. 5

    조건이 mysql에서 null 인 경우

  6. 6

    조건이 항상 참인 경우

  7. 7

    SQL 조건부 커밋-오류가없는 경우에도 결과 확인

  8. 8

    Np. 오류를 생성하는 다중 또는 중첩 조건이있는 경우

  9. 9

    로그인 실패 후 로그인 페이지에 오류 메시지 표시-조건이 작동하지 않는 경우

  10. 10

    SQL 인 경우 조건

  11. 11

    Postgresql-데이터가있는 경우 조건부 조인

  12. 12

    다음 중 하나와 일치하는 경우 조건을 확인하십시오.

  13. 13

    조건이 True 인 경우 키워드 인수 전달

  14. 14

    VBA에서 이전 조건이 거짓 인 경우에도 'And'조건 평가

  15. 15

    if 내에서 조건이 충족되는 경우에만 조건 확인

  16. 16

    Java에서 조건을 확인하여 오류 발생

  17. 17

    조건이 참인 경우 동적으로 아이콘 추가

  18. 18

    조건이 임의의 길이 인 경우 Excel 복합

  19. 19

    ReactJS 조건이 참인 경우에만 가져 오는 방법은 무엇입니까?

  20. 20

    Laravel Eloquent- "with"의 "where"조건이 참인 경우에만 관계 요소 가져 오기

  21. 21

    조건이 확인되지 않은 경우 개체를 만들지 마십시오.

  22. 22

    LocalDateTIme가 null이 조건에있는 경우 확인

  23. 23

    Xamarin : 조건이 false 인 경우 단추 숨기기

  24. 24

    조건이 참인 경우 문서 제외

  25. 25

    반응 : 조건이 참인 경우에만 자식 렌더링

  26. 26

    조건이 참인 경우에만 TableView의 UIStoryboardSegue

  27. 27

    파일 확인 조건이 존재하는 경우 PHP

  28. 28

    If / Then-조건이 거짓 인 경우에도 실행

  29. 29

    행에서 조건이 TRUE 인 경우 (그룹화 됨)

뜨겁다태그

보관