2013-09-30 3 views
0

J'ai des devoirs où je dois écrire un petit programme qui demande un nombre et retourne le mois assigné à ce numéro. Jusqu'à présent, j'ai écrit deux classes différentes, l'une pour inviter l'utilisateur pour int, et l'autre avec les tableaux du mois. Maintenant, mon problème est de passer les mois à la classe principale lorsque l'utilisateur entre un nombre.Passer un tableau de chaînes dans une méthode principale

Jusqu'à présent, pour la classe principale je et je n'ai aucune idée sur la façon de procéder ... je reçois:

java:17: error: array required, but Date found System.out.println(monthName[index]); 

J'ai essayé d'être aussi précis que possible.

import java.util.Scanner; 

public class Driver { 

    public static void main(String[] args) 
    { 
     Utility input = new Utility(); 
     final int MONTH_NAMES = 12; 
     int[] month = new int[MONTH_NAMES]; 
     Date monthName = new Date(); 
     { 
     System.out.println(input.queryForInt("Enter the number for a month ")) ; 
     } 


    for (int index = 0; index < 12; index++) 
     System.out.println(monthName[index]); 
} 
} 
+3

monthName n'est pas un tableau ... aussi que voulez-vous exactement? – LostBoy

+0

Je veux interroger l'utilisateur pour un nombre et en fonction de ce nombre (1-12) retourner le mois correspondant. Et oui je pensais que c'était le problème aussi mais je n'ai aucune idée sur la façon de procéder à partir de là: \ –

+0

Jetez un oeil à http://stackoverflow.com/questions/1038570/how-can-i-convert-an- integer-to-localized-mois-name-in-java – LostBoy

Répondre

0

Votre ligne System.out ne fait pas référence à la baie que vous avez appelée mois.

+0

Ouais c'est ce que je pensais mais je n'arrive pas à le faire. –

0

Je ne pense pas que vous aviez l'intention d'utiliser Date monthName ici

System.out.println(monthName[index]); 

A en juger par le nombre d'index de votre boucle for est comptage, il semble que vous vouliez utiliser int[] month.

System.out.println(month[index]); 
+0

Je vais essayer ça dès que je serai à la maison! Long trajet en train Merci! –

0

mouthName est un objet Date, pas un tableau. Aussi, pourquoi utiliser une boucle for pour imprimer la bouche d'une année entière?

Je pense qu'il peut changer la dernière pour la boucle à System.out.printLn(mouthName.getMouth()) si l'input.queryForIntmethod peut passer avec succès la bouche int à l'objet mouthName.

+0

J'ai utilisé une boucle for afin qu'elle continue à fonctionner après que l'utilisateur entre ses données ou comme mon professeur dit "le programme aura l'air cassé." –

Questions connexes