2014-10-01 2 views
0

Я пытаюсь распечатать массив объектов 2d, используя метод toString(). Я могу отобразить массив с помощью простого цикла, но я хочу использовать метод toString(). Я новичок в программировании, поэтому, пожалуйста, несите меня.печать массива объектов 2d с помощью метода toString()

В основном я объявил мой массив:

  private Object [][]array; 

и напечатать его я использовал для цикла в основном методе:

` for(Object []a: data.array) //instantiated my class to data in main method 
    { 
     for(object k:a) 
     { 
      System.out.println(k) 
     } 
      System.out.println(); 
     ` 

Но я хочу использовать метод ToString() и иметь возможность называть его непосредственно в основном методе, используя:

System.out.println(data); 

Как это сделать? Я запутался, потому что toString() возвращает строку, и мне придется переопределить ее. Мне нужно бросить? Пожалуйста, предложения помогут.

Мой выход из цикла по ниже и хотел бы ToString(), чтобы иметь такой же вывод:

Country 1983 1984 1985 1986 1987 1988 1989 USA 0.1 0.2 0.4 0.5 0.6 0.8 0.1 MEXICO 0 1.3 1.23 0.4 0.1 0.0 0.2 Canada 1.3 2.1 0.3 0.1 0.0 1.1 1.1

+0

'System.out.println (k)' такой же, как 'System.out.println (k.toString())'. Вы также можете использовать ['Arrays.toString'] (http://docs.oracle.com/javase/7/docs/api/java/util/Arrays.html#toString (java.lang.Object [])) для преобразуйте массив в представление 'String', но вы потеряете контроль над форматированием ... *« Я запутался »* - Вы не единственный. Что не так с вашим нынешним подходом? Что не работает? Какова ваша цель? – MadProgrammer

+0

@MadProgrammer да, я не хочу потерять форматирование. Требовалось использовать toString(). В основном я беру 2 типа данных. Одна строка, а вторая - двойная. Я работаю, но мне нужно переопределить toString(), чтобы отобразить тот же формат, что и в цикле for – user2738145

+0

Итак, каковы данные в массиве? Я думаю, что вы не располагаете достаточной информацией о проблеме, связанной с проблемой. – MadProgrammer

ответ

0

, что вы делаете то же самое, как k.toString() (предложенный MadProgramme), если вы хотите реализовать (еще лучше: переопределить) свой собственный toString, а затем просто написать класс. См. Пример here

+0

, когда я использую toString(), он предоставляет мне адрес, а не фактические значения – user2738145

+0

, потому что вы используете Object. См. Это: http://docs.oracle.com/javase/7/docs/api/java/lang/Object.html#toString() – adhg

Смежные вопросы