2016-12-17 2 views
-3

donc j'apprends JAVA par moi-même et je n'ai que les connaissances de base sur les langages de programmation en général. J'ai écrit ce programme de calculatrice simple pour essayer et appliquer ce que j'ai appris jusqu'à présent, mais le problème est qu'il n'imprime pas l'âge, à la place il imprime un 0 et je ne sais pas pourquoi:Java get() fonction ne fonctionne pas

this est la classe

public class userinput { 

private String name; 
private int age; 

public tuna (String name, int age){ 
    name = "dina"; 
    age = 3; 
} 

public void simpleMessage2(){ 
    System.out.println("hello " + name + " ready to use our calculator?"); 
} 

public void setName(String Uname){ 
    name = Uname; 
} 

public void setAge(int uage){ 
    uage = age; 
} 

public String getName(){ 
    return name; 
} 

public int getAge(){ 
    return age; 
} 

public void printname(){ 
    System.out.printf("your name is %s", getName()); 
    System.out.println(); 
} 

public void printage(){ 
    System.out.println("your age is"); 
    System.out.println(getAge()); 
    System.out.println(); 
}} 

et c'est la classe principale:

import java.util.Scanner; 

class calc { 
public static void main (String args[]) { 

    String name1; 
    int age1; 

    Scanner bucky = new Scanner(System.in); 
    int choice, num1, num2, sum; 

    System.out.println("Hey, enter your name"); 
    name1 = bucky.nextLine(); 
    System.out.println("Hey, enter your age"); 
    age1 = bucky.nextInt(); 

    tuna objc1 = new userinput(name1, age1); 

    objc1.setName(name1); 
    objc1.printname(); 
    System.out.println(); 

    objc1.setAge(age1); 
    objc1.printage(); 
    System.out.println(); 

    System.out.println("this is a basic calculator, select from the menu:"); 
    System.out.println("Enter 1 for summation"); 
    System.out.println("Enter 2 for subtraction"); 
    System.out.println("Enter 3 for multiplication"); 
    System.out.println("Enter 4 for division"); 
    System.out.println("Enter 5 for module"); 
    System.out.println("Enter 0 to exit"); 

    choice = bucky.nextInt(); 

    while (choice != 0) { 

     switch(choice){ 

     case 1: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the sum is equal to: "); 
      sum = num1 + num2; 
      System.out.print(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 2: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the sub is equal to: "); 
      sum = num1 - num2; 
      System.out.print(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 3: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the mul is equal to: "); 
      sum = num1 * num2; 
      System.out.print(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 4: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the div is equal to: "); 
      sum = num1/num2; 
      System.out.print(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 5: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the mod is equal to: "); 
      sum = num1 % num2; 
      System.out.print(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     default: 
      System.out.println("Invalid entry, please try again"); 
      choice = bucky.nextInt(); 
      break; 
     } 

     System.out.println("Bye!"); 
    } 
} 
} 
+2

Vous oubliez les balises 'sql' et' javascript'. –

+3

pourquoi diable as-tu tagué C# et c pour une question java? – smoggers

+1

Je ne pense pas que votre code puisse compiler. Pourquoi ne pas nous montrer un code compréhensible et nous dire votre entrée exacte, la production attendue et réelle que vous obtenez. Vous avez une classe nommée 'userInput' avec un constructeur' tuna'. – user3437460

Répondre

0

Où est la classe de thon?

tuna objc1 = new userinput(name1, age1); 

Constructeur de l'userinput:

public userinput(String n, int a){ 
    name = n; 
    age = a; 
} 

j'apprenais juste

0

la première erreur que vous n'avez pas la classe de thon changer l'erreur

tuna objc1 = new userinput(name1,age1); 

à

userinput objc1 = new userinput(); 

alors je change votre code comme la méthode utilisée dans la première classe et la deuxième classe pour rendre le fonctionnement la première classe

import java.util.Scanner; 

public class userinput { 

private String name; 
private int age; 

public void simpleMessage2(){ 
    System.out.println("hello " + name + " ready to use our calculator?"); 
} 

public void setName(String Uname){ 
    name = Uname; 
} 

public void setAge(int uage){ 
     age= uage; } 
public void printname(){ 
    System.out.printf("your name is %s", getName()); 
    System.out.println(); 
} 
public void printage(){ 
System.out.printf("your age is %s", getAge()); 
    System.out.println();} 
public int getAge(){ 
    return age; 
} 
public String getName(){ 
    return name; 
} 
} 

la deuxième classe

class calc { 
public static void main (String args[]) { 

    String name1; 
    int age1; 

    Scanner bucky = new Scanner(System.in); 
    int choice, num1, num2, sum; 

    System.out.println("Hey, enter your name"); 
    name1 = bucky.nextLine(); 
    System.out.println("Hey, enter your age"); 
    age1 = bucky.nextInt(); 

    userinput objc1 = new userinput(); 

    objc1.setName(name1); 
    objc1.printname(); 
    System.out.println(); 

    objc1.setAge(age1); 
    objc1.printage(); 
    System.out.println(); 
    objc1.simpleMessage2(); 
    System.out.println(); 

    System.out.println("this is a basic calculator, select from the menu:"); 
    System.out.println("Enter 1 for summation"); 
    System.out.println("Enter 2 for subtraction"); 
    System.out.println("Enter 3 for multiplication"); 
    System.out.println("Enter 4 for division"); 
    System.out.println("Enter 5 for module"); 
    System.out.println("Enter 0 to exit"); 

    choice = bucky.nextInt(); 

    while (choice != 0) { 

     switch(choice){ 

     case 1: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the sum is equal to: "); 
      sum = num1 + num2; 
      System.out.println(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 2: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the sub is equal to: "); 
      sum = num1 - num2; 
      System.out.println(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 3: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the mul is equal to: "); 
      sum = num1 * num2; 
      System.out.println(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 4: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the div is equal to: "); 
      sum = num1/num2; 
      System.out.println(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     case 5: 
      System.out.println("enter the 1st num"); 
      num1 = bucky.nextInt(); 
      System.out.println("enter the 2nd num"); 
      num2 = bucky.nextInt(); 
      System.out.println("the mod is equal to: "); 
      sum = num1 % num2; 
      System.out.println(sum); 
      System.out.println("Select another operation from the menu or enter 0 to exit"); 
      choice = bucky.nextInt(); 
      break; 

     default: 
      System.out.println("Invalid entry, please try again"); 
      choice = bucky.nextInt(); 
      break; 
     } 


    } 
    System.out.println("Bye!");} 


} 

J'espère que je vous aider