2012-05-27 3 views
1

Affiche la date 100 jours à partir d'aujourd'hui, le jour de votre naissance et la date 10 000 jours après votre date de naissance. J'ai fait tout cela, mais je veux aller un peu plus loin, je veux que l'utilisateur puisse entrer le nombre de jours à partir d'aujourd'hui qu'il/elle souhaite connaître la date de (si cela a du sens du tout) ...). Voici ce que la partie du code, je travaille sur ressemble:Types incompatibles - trouvés java.lang.String mais attendu int, en java

public class calendarProjectTest 
    { 
    public static void main(String[] args) 
    { GregorianCalendar cal = new GregorianCalendar(); //declare today's date 
    GregorianCalendar myBirthday = new 
    GregorianCalendar(1990, GregorianCalendar.JUNE, 9); //declare my birthday 
    System.out.println("Please enter a number greater than 0:"); 
    Scanner keyboard = new Scanner(System.in); 
    String number = keyboard.next(); 
    int value = number; 
    cal.add(GregorianCalendar.DAY_OF_MONTH, number); 

J'utilise bluej et il dit: « types incompatibles - trouvé java.lang.String mais attendu int » Je suis à une perte. Je n'ai aucune idée de ce qu'il faut faire. Tout conseil serait génial. et oui, je sais qu'il n'y a pas de parenthèses.

Répondre

1

Modifier ceci:

cal.add(GregorianCalendar.DAY_OF_MONTH, Integer.parseInt(number)); 

Comme vous pouvez le voir sur la docs, la méthode add() a besoin des deux paramètres que int. problème

1

Utilisez ceci:

int value = Integer.parseInt(number); 
1

est ici

String number = keyboard.next(); 
int value = number; 

utiliser:

int value = keyboard.nextInt(); // you will get parsed int value 
cal.add(GregorianCalendar.DAY_OF_MONTH, value); 
Questions connexes