Üdv. Tapasztaltabb java programozók segitségét szeretném kérni, mert nem tudom hogy mentsem el az adatokat a java consolos programombol (NETBeans használok) ?
a lenyeg van egy Vektor amit szeretnék beiratni egy txt fáljba de sehogy sem sikerül próbáltam objectum ként is mellékelem a programkódot Az AdatNyilv osztályról van szó azon belül az Adatok vector azt szeretném h fájlba mentse az adatokat és onnan fel is tudja tölteni a vectort és kiiratni
package gyakorlas;
/**
*
* @author Pista
*/
import java.io.*;
import java.util.*;
import java.text.Collator;
class cAdat
{
public String nev;
public String cim;
public int jegymg; // MaGyar
public int jegyt; // Tori
public int jegymt; // MaTek
public int atlag;
public cAdat(String uj_nev, String uj_cim, int uj_jegymg, int uj_jegyt, int uj_jegymt)
{
nev = uj_nev;
cim = uj_cim;
jegymg = uj_jegymg;
jegyt = uj_jegyt;
jegymt = uj_jegymt;
atlag= (jegymg+jegyt+jegymt)/3;
}
}
class AdatNyilv
{
public Vector Adatok = new Vector();
public String nev;
public String cim;
private int jegymg; // MaGyar
public int jegyt; // Tori
public int jegymt; // MaTek
public int atlag;
public int meret()
{
return Adatok.size();
}
public AdatNyilv()
{
/**/
System.out.println(" ");
felvesz("Nagy Jozsef","Szeged",3,5,4);
felvesz("Kis Istvan","Szeged",2,3,4);
felvesz("Kovacs Eva","Morahalom",5,4,5);
felvesz("Szep Virag","Mako",3,5,2);
}
public void felvesz(String uj_nev, String uj_cim, int uj_jegymg, int uj_jegyt, int uj_jegymt)
{
Adatok.add( new cAdat (uj_nev, uj_cim, uj_jegymg, uj_jegyt, uj_jegymt) );
};
public cAdat lekerdez_id(int id)
{
cAdat cA = (cAdat)( Adatok.get( id ) );
return cA;
}
public void lekerdez_kiir(int id)
{
cAdat cA = (cAdat)( Adatok.get( id ) );
kiir(id, cA);
}
public void csere(int id1, int id2 )
{
cAdat cA1 = (cAdat)( Adatok.get( id1 ) );
cAdat cA2 = (cAdat)( Adatok.get( id2 ) );
Adatok.setElementAt(cA1, id2);
Adatok.setElementAt(cA2, id1);
}
public void listaz()
{
int size;
size = meret();
for (int i = 0; i < size; i++)
{
lekerdez_kiir(i);
}
}
public void rendez(int szempont)
{
Collator c = Collator.getInstance(new Locale("HU"));
int size;
int sorrend = 0;
boolean kell;
cAdat cA1, cA2;
size = Adatok.size();
do
{
kell = false;
for (int i = 0; i < size-1; i++)
{
cA1 = lekerdez_id(i);
cA2 = lekerdez_id(i+1);
switch (szempont)
{
case 1: sorrend = c.compare(cA1.nev, cA2.nev); // nev szerint
break;
case 2: sorrend = cA1.jegymg-cA2.jegymg; // magyar jegy szerint
break;
case 3: sorrend = cA1.jegyt-cA2.jegyt; // tori jegy szerint
break;
case 4: sorrend = cA1.jegymt-cA2.jegymt; // matek jegy szerint
break;
case 5: sorrend = cA1.atlag-cA2.atlag; // atlag szerint
break;
}
if (sorrend>0)
{
csere(i,i+1);
kell = true;
}
}
} while (kell);
return;
}
public void kiir(int id, cAdat cA)
{
System.out.println("-------- "+(id+1)+". diak --------");
System.out.println(" Nev: "+cA.nev);
System.out.println(" Lakhely: "+cA.cim);
System.out.println(" Jegyei: magyar "+cA.jegymg+" tori: "+cA.jegyt+" matek: "+cA.jegymt);
System.out.println(" Atlaga: "+cA.atlag);
System.out.println("-------------------------");
System.out.println("");
}
}
class cMenu
{
private static BufferedReader br = new BufferedReader( new InputStreamReader ( System.in ) );
public AdatNyilv Adatptr;
public void atad(AdatNyilv a)
{
Adatptr = a;
}
public void menu() throws IOException
{
String input = "";
for (;;)
{
System.out.println("Menu:");
System.out.println();
System.out.println( "(1) Felvesz" );
System.out.println( "(2) Listaz" );
System.out.println( "(3) Sorrend valtas nev szerint" );
System.out.println( "(4) Sorrend valtas magyar jegy szerint" );
System.out.println( "(5) Sorrend valtas tori jegy szerint" );
System.out.println( "(6) Sorrend valtas matek jegy szerint" );
System.out.println( "(7) Atlag szerint" );
System.out.println( "(q) Kilep" );
System.out.println();
input = br.readLine();
if ( input.length() != 0 )
{
char c = input.toLowerCase().charAt( 0 );
switch ( c )
{
case '1': felveszmenu(); break;
case '2': Adatptr.listaz(); break;
case '3': Adatptr.rendez(1);; break;
case '4': Adatptr.rendez(2);; break;
case '5': Adatptr.rendez(3);; break;
case '6': Adatptr.rendez(4);; break;
case '7': Adatptr.rendez(5);; break;
case 'q': return;
}
}
}
}
public void felveszmenu() throws IOException
{
String nev;
String cim;
int jegymg;
int jegyt;
int jegymt;
String input = "";
System.out.println("Felvesz menu:");
System.out.println();
System.out.print( "Nev: " ); nev = br.readLine();
if ( nev.length() != 0 )
{
System.out.print( "Lakcim: " ); cim = br.readLine();
System.out.print( "Jegy magyarbol " ); jegymg = Integer.parseInt( br.readLine() );
System.out.print( "toribol: " ); jegyt = Integer.parseInt(br.readLine());
System.out.print( "matekbol: " ); jegymt = Integer.parseInt(br.readLine());
System.out.println();
Adatptr.felvesz(nev, cim, jegymg, jegyt, jegymt);
}
}
}
public class Tanuered
{
public static void main(String[] args) throws IOException
{
AdatNyilv aNyilv = new AdatNyilv();
cMenu Menu = new cMenu();
Menu.atad(aNyilv);
Menu.menu();
}
}
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, 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!