2014-03-24 1 views
0

У меня есть проблема с моим кодовым этой Metod возвращает вкладку Интс:Используя вкладку Интс, возвращенное из метода в главном

int[] czynnikiPierwsze(int n){ 
    dzielniki=new int[20]; 
    for(int j=0;j<n;j++){ 
    for(int i=0;i<n;i++){ 
     if(n%tab[i]==0){ 
      dzielniki[j]=tab[i]; 
      n=n/tab[i]; 
      break; 
     } 
    } 
    } 
    return dzielniki; 
} 

Есть, например {2,2,3,8,0 , 0,0,0,0} на этой вкладке (dzelniki). Как я могу использовать эту вкладку в основном и печатать эти цифры? я создал новый объект и использовал этот метод:

RozkladLiczby a=new RozkladLiczby(100); 
    System.out.println(a.czynnikiPierwsze(69)); 

И я получаю werid выхода: [I @ 1693b52b - Наверное, потому что я хочу, чтобы напечатать вкладку весь сразу, как я могу напечатать это свойство?

+0

Под «вкладкой» вы имеете в виду «массив»? – TypeIA

ответ

0

Массив int с является объектом тоже, но что «класс» не переопределить toString method from Object, который отвечает за «странный выход» Вы видите:

Другими словами, этот метод возвращает строку, равную значению:

getClass().getName() + '@' + Integer.toHexString(hashCode()) 

Печать массива с помощью Arrays.toString вместо этого.

System.out.println(Arrays.toString(a.czynnikiPierwsze(69))); 
+0

Другой вопрос, если я хотел бы напечатать эту вкладку шаг за шагом, например: 2 следующий 2 в следующем перемещении 3 и т. Д. Или я хотел бы напечатать это как: 2 * 2 * 3 как я могу это сделать? – user3407967

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