2014-01-08 1 views
0

그래서 파일 내에서 단어 쌍이 영어와 덴마크어로 된 배열 목록이 있습니다. 그런 다음 내가 만든 GUI에 단어 중 하나를 전달한 다음 사용자가 다른 언어로 생각하는 것을 씁니다.배열 목록에서 한 쌍의 값을 참조한 다음 비교하십시오.

내가 직면 한 문제는 두 가지 다른 언어이므로 질문에 답이 동등해야한다고 말할 수없고이 문제를 해결하는 방법을 모르겠습니다.

친절한 영혼이 나를 도와 주시겠습니까? :)

http://imgur.com/HfelHtb 내가 무슨 말을하는지 이해하는 데 도움이 필요하면 다음은 GUI 그림입니다.

public class Quizz 
{ 
    static void add(Quizz quizzlist) 
    { 
     throw new UnsupportedOperationException("Not supported yet."); //To change body of generated methods, choose Tools | Templates. 
    } 

    public String getQuestion() 
    { 
     return question; 
    } 

    public void setQuestion(String question) 
    { 
     this.question = question; 
    } 

    public String getAnswer() 
    { 
     return answer; 
    } 

    public void setAnswer(String answer) 
    { 
     this.answer = answer; 
    } 

    private String question; 
    private String answer; 

    public Quizz(String question, String answer) 
    { 
     this.question = question; 
     this.answer = answer; 
    } 

    public String toFile() 
    { 
     return answer + "," + question; 
    } 
} 
+0

이미 '쌍을 이룬 단어'가 있으므로 분명히 그 질문은 대답과 '평등'하다고 생각할 것입니다! – Rugal

+0

나는 문제를 비교하는 방법을 모르겠다. 왜냐하면 코드에서 두 단어를 똑바로 비교하면 a = b와 같을 것입니다. 아니, 만약 내가 너 무슨 뜻인지 알았어. 배열 목록에서이 작업을 개인적으로 수행하는 방법을 모르겠습니다. –

+0

당신의 요구 사항에 가장 적합한'HashMap'을 사용할 수 있다고 생각합니다! 이해할 수 있듯이 원래는 쌍을 이루는 배열 목록입니다! – Rugal

답변

0

배열 목록 구조를 게시 할 수 있습니까? 하나 또는 두 개의 배열 목록이 있습니까?

당신은 질문이 "Apple"이고 대답이 "ble블"이어야한다는 것을 의미합니까?

코드를 게시하면 사람들이 원하는 것을 알 수 있습니다.


문자열을 비교하려면 "="기호를 사용하는 대신 equals (String str) 메서드를 사용하십시오.

public boolean checkAnswer(String answer){ 
    return (this.answer.equals(answer)); 
} 
+0

그래, 내가 moer 코드를 게시 할 수 있습니다, 나는 사람들이 코드의 어떤 부분을 필요가 있을지 확신하지 못했습니다. 기본적으로 단어 쌍을 포함하는 배열 목록이 있습니다.이 목록은 두 번째로 OP로 편집됩니다. 예, 기본적으로 GUI가 수행 할 작업입니다. –

+0

퀴즈 목록이있는 곳에서 전체 클래스를 추가했습니다. –

+0

@MadsRosenmeyer Quizz 클래스에서 단 하나의 질문과 하나의 답변처럼 보일 수도 있습니다. bool 값을 반환하는 비교 메소드를 추가 할 수 있습니다. 옳고 그름. 내 게시물을 업데이트하여 원하는지 확인하십시오. – Kenma

1

나는 당신의 문제를 이해하면, 당신은 덴마크어로 이에 상응하는 영어 단어 (그리고 다른 방법으로 주위뿐만 아니라)를지도하고 싶습니다 ... 그리고 할 수있는 :

  • "question"이 영어 단어이고 사용자의 대답이지도의 "덴마크어"면과 일치하는지 확인하고
  • "question"이 "영어"인 경우 사용자의 답변이지도의 "영어"와 일치하는지 확인합니다. 덴마크어 단어.

기본적으로 원하는 것은 양방향지도입니다. Google의 Guava BiMap이 당신이 원하는 것일 수 있습니다. 다음은 그 사용 방법의 예입니다 :

import com.google.common.collect.BiMap; 
import com.google.common.collect.HashBiMap; 

public class BiMapTest { 
    public static void main(final String[] args) { 
     final BiMap<String, String> biMap = HashBiMap.create(); 

     biMap.put("english_word", "danish_equivalent"); 

     System.out.println("english_word's Danish equivalent is: " + biMap.get("english_word")); 
     System.out.println("danish_equivalent's English original word is: " + biMap.inverse().get("danish_equivalent")); 
    } 
} 
관련 문제