Problem z wyświetleniem zmiennych

0

Otóż mam taki program:

Baza.java:

package baza:

import java.util.Scanner;

public class Baza {

    public static void main(String[] args) {
        set();
        get();
    }
    
    /**
     *
     */
    public static void set(){
        Scanner scan= new Scanner(System.in);
        Czlowiek czlowiek = new Czlowiek();
        System.out.println("Podaj imię: ");
        czlowiek.imie = scan.nextLine();
        System.out.println("Podaj nazwisko");
        czlowiek.nazwisko = scan.nextLine();
        System.out.println("Podaj wiek: ");
        czlowiek.lata = scan.nextInt();
        System.out.println(czlowiek.imie);
    }
    
    public static void get(){
        Scanner scan = new Scanner(System.in);
        System.out.println("Czy chcesz wyświetlić dane? \n 1/tak \n 2/nie");
        int taknie = scan.nextInt();
        if(taknie == 1){
            System.out.println("Twoje dane: " + czlowiek.imie);              //tutaj
        }else{
            
        }
    }
    
}

i Czlowiek.java:

package baza;

public class Czlowiek {
    String imie;
    String nazwisko;
    int lata;
    
}

no i chodzi o to ,że nie wiem jak przekazać te zmienne żeby działało wyświetlanie "czlowiek.imie" w metodzie get();

1

Stwórz sobie tego człowieka jako pole klasy albo zwróć setterem człowieka i przekaz go do getta. Pierwszy sposób szybszy

1

Metody mogą przyjmować parametry i zwracać obiekty:

package baza:

import java.util.Scanner;

public class Baza {

    public static void main(String[] args) {
        Czlowiek clowiek =  createCzlowiekWithSampleData();
        showCzlowiek(czlowie);
    }

    /**
     *
     */
    public static Czlowiek createCzlowiekWithSampleData(){
        Scanner scan= new Scanner(System.in);
        Czlowiek czlowiek = new Czlowiek();
        System.out.println("Podaj imię: ");
        czlowiek.imie = scan.nextLine();
        System.out.println("Podaj nazwisko");
        czlowiek.nazwisko = scan.nextLine();
        System.out.println("Podaj wiek: ");
        czlowiek.lata = scan.nextInt();
        System.out.println(czlowiek.imie);
        return czlowiek;
    }

    public static void showCzlowiek(Czlowiek czlowiek){
        Scanner scan = new Scanner(System.in);
        System.out.println("Czy chcesz wyświetlić dane? \n 1/tak \n 2/nie");
        int taknie = scan.nextInt();
        if(taknie == 1){
            System.out.println("Twoje dane: " + czlowiek.imie);              //tutaj
        }else{

        }
    }

}

Chociaż to dalej nie jest idealny kod ;)
BTW używaj bardziej znaczących (opisowych) nazw niż get i set

Powodzenia w nauce

1 użytkowników online, w tym zalogowanych: 0, gości: 1