JAVA! Segítség! Hogy lehet ezt megvalósítani?
Van egy ELSO nevű osztályom melynek van 4 adattagja melyből az első 3 konstruktor segítségével inicializálódik egy futtatható osztályban. Az ELSO-ben van egy metódus ami a negyedik adattaggal összehasonlítja a harmadikat majd kiír egy eredményt. Ezen metódust a futtatható osztályomban meghívom és szépen ki is írja amit kell VISZONT ezután egy bekért változóval meg szeretném változtatni ezt a negyedik adattagot hogy ennek függvényében újra meghívjam és kiírja ez eredmény ami így nyilván már más lesz.
Hogy tudom ezt megcsinálni? Kell még egy konstruktor?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Wat??
Mi okoz problémát?
Megváltoztatni egy adattagot?
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
/*
Van egy ELSO nevű osztályom melynek van 4 adattagja melyből az első
3 konstruktor segítségével inicializálódik egy futtatható osztályban.
Az ELSO-ben van egy metódus ami a negyedik adattaggal összehasonlítja
a harmadikat majd kiír egy eredményt.
Ezen metódust a futtatható
osztályomban meghívom és szépen ki is írja amit kell VISZONT ezután
egy bekért változóval meg szeretném változtatni ezt a negyedik adattagot,
hogy ennek függvényében újra meghívjam és kiírja ez eredmény ami így
nyilván már más lesz.
Hogy tudom ezt megcsinálni? Kell még egy konstruktor?
*/
import java.util.Scanner;
public class Elso {
private final int a;
private final int b;
private final int c;
private int d = 10; //
public static void main(String[] asd) {
new Elso();
}
public Elso() {
this.a = 1;
this.b = 2;
this.c = 3;
this.osszehasonlito();
this.bekerEsModosit();
}
public void osszehasonlito() {
System.out.println((this.c > this.d) ? "c nagyobb mint d" : "c kisebb mind d");
}
public void bekerEsModosit() {
String input;
do {
Scanner keyboard = new Scanner(System.in);
input = keyboard.nextLine();
} while(this.kapottAdatEllenorzes(input));
this.d = Integer.parseInt(input);
}
private boolean kapottAdatEllenorzes(String s) {
return s.matches("[0-9]") && Integer.parseInt(s) <= Integer.MAX_VALUE;
}
}
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Javítottam. :) előző sztornó.
/*
Van egy ELSO nevű osztályom melynek van 4 adattagja melyből az első
3 konstruktor segítségével inicializálódik egy futtatható osztályban.
Az ELSO-ben van egy metódus ami a negyedik adattaggal összehasonlítja
a harmadikat majd kiír egy eredményt.
Ezen metódust a futtatható
osztályomban meghívom és szépen ki is írja amit kell VISZONT ezután
egy bekért változóval meg szeretném változtatni ezt a negyedik adattagot,
hogy ennek függvényében újra meghívjam és kiírja ez eredmény ami így
nyilván már más lesz.
Hogy tudom ezt megcsinálni? Kell még egy konstruktor?
*/
import java.util.Scanner;
public class Elso {
private final int a;
private final int b;
private final int c;
private int d = 10; //
public static void main(String[] asd) {
Elso E = new Elso();
E.osszehasonlito();
E.bekerEsModosit();
}
public Elso() {
this.a = 1;
this.b = 2;
this.c = 3;
}
public void osszehasonlito() {
System.out.println((this.c > this.d) ? "c nagyobb mint d" : "c kisebb mind d");
}
public void bekerEsModosit() {
String input;
do {
Scanner keyboard = new Scanner(System.in);
input = keyboard.nextLine();
} while(this.kapottAdatEllenorzes(input));
this.d = Integer.parseInt(input);
}
private boolean kapottAdatEllenorzes(String s) {
return s.matches("[0-9]+") && Integer.parseInt(s) <= Integer.MAX_VALUE;
}
}
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz1.png)
![*](http://static.gyakorikerdesek.hu/p/vsz0.png)
Persze annyi hiányossága van:
- Mínusz értéket nem adhatunk meg, mert újra kéri
- Nem közli, hogy adatot vár. :D
- Nem vizsgáljuk c == d értékre.
Csak példakódnak szántam, úgy turkálsz bele, ahogy tetszik. :)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
> Hogy tudom ezt megcsinálni?
Egy setter metódussal.
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
![*](http://static.gyakorikerdesek.hu/p/vsz2.png)
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!