3

我有两个班级Hangmanwords如下所示:

刽子手类:

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hangman;

import java.util.Random;
import java.util.Scanner;

/**
 *
 * @author Adam2_000
 */
public class Hangman {

    /**
     * @param args the command line arguments
     */
    public static void main(String[] args) {

        String player = "";
        String selection;
        Scanner scan = new Scanner(System.in);

        words words = new words();
        String easyWords1[] = words.easyWords;
        String mediumWords1[] = words.mediumWords;
        String hardWords1[] = words.hardWords;


        System.out.println("Welcome to Hangman version 1");
        System.out.println("Please choose a difficulty");
        System.out.println("A: Easy");
        System.out.println("B: Medium");
        System.out.println("C: Hard");


        char iChoice;

        do {
            selection = scan.nextLine().toUpperCase();
        } while (selection.isEmpty());
        iChoice = selection.charAt(0);
        if (iChoice != 'X') {
            switch (iChoice) {

                case 'A':
                    System.out.println("You have choosen easy:");
                    System.out.println(words.getEasyWords());
                    break;

                case 'B':
                    System.out.println("You have choosen Medium");
                     System.out.println(words.getMediumWords());
                    break;

                case 'C':
                    System.out.println("You have choosen Hard");
                     System.out.println(words.getHardWords());
                    break;
            }
        }
    }
}

词类:

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package hangman;

import java.lang.reflect.Array;
import java.util.Random;


/**
 *
 * @author Adam2_000
 */
public class words extends Hangman {

      String[] easyWords = {"Bee", "Car", "Fish", "Shed"};
      String[] mediumWords = {"House", "Sheep", "Castle", "Phone"};
      String[] hardWords = {"Octagon", "Crocodile", "Chocolate", "Motorbike"};

    public String[] getEasyWords() {
        return easyWords;
    }

    public void setEasyWords(String[] easyWords) {
        this.easyWords = easyWords;
    }

    public String[] getMediumWords() {
        return mediumWords;
    }

    public void setMediumWords(String[] mediumWords) {
        this.mediumWords = mediumWords;
    }

    public String[] getHardWords() {
        return hardWords;
    }

    public void setHardWords(String[] hardWords) {
        this.hardWords = hardWords;
    }

    @Override
    public String toString() {
        return "words{" + "easyWords=" + easyWords + ", mediumWords=" + mediumWords + ", hardWords=" + hardWords + '}';
    }
}

当我尝试显示每个数组时,我得到的是引用而不是字符串,有人可以帮我吗?

4

2 回答 2

4

...我得到的是参考而不是字符串...

这就是在 class 中定义方法的方式Object

由于您无法覆盖数组的该行为,因此您可以遍历它,也可以使用toString( static) 实用程序方法java.util.Arrays

于 2013-03-16T19:14:56.237 回答
2

你看到类似的东西

[Ljava.lang.String;@17bd6a1

这是Object#toString数组的表示String,要显示内容,您可以使用:

Arrays.toString(words.getEasyWords())
于 2013-03-16T19:15:16.163 回答