Zum Inhalt springen

int, boolean in ein String umwandeln??? geht das??


Empfohlene Beiträge

Geschrieben

Hi

Ich denk das solte mit der Methode toString() gehen.

So könnte das aussehen! Denk ich auf jedenfall! Sollte bei boolean und int gehen!

String test = id.toString();

Cyrill

Geschrieben

aber was mach ich wenn ich es einlesen muss und dann in ein ektorpacke?

 

// Datei Test.java


import java.util.*;

import java.io.*;


public class Test

{



	public static void main (String[] args)

	{


		// Bestandsteile der Person werdern definiert

		// Das Objekt PersonAddress wird mit den Person zusammengefügt








                BufferedReader eingabe = new BufferedReader(new InputStreamReader (System.in) );


                Person person01 = new Person();

                PersonAddress paddress01 = new PersonAddress();


		String tastatur;

		try

		{

			System.out.println("Bitte Geben Sie das Alter ein :");


                        int age = 12;

                        Integer test = new Integer(age);

                        String test1 = new String();

                        test1        = test.toString();












               }


		catch(IOException e)

		{

			System.out.print("Fehler bei der Eingabe!");

		}





		Vector v = new Vector();


                v.addElement(person01);


		Enumeration e;


                Person currentPerson;




		for (e = v.elements() ; e.hasMoreElements() ; )

		{

			currentPerson = (Person)e.nextElement();


                        System.out.println("Alter: " + currentPerson.age()  );

		}

	}






}

 
Geschrieben

hmmmmmmmm..

ich hab es mal logisch versucht und das gemacht.:

 

// Datei Test.java


import java.util.*;

import java.io.*;


public class Test

{



	public static void main (String[] args)

	{


		// Bestandsteile der Person werdern definiert

		// Das Objekt PersonAddress wird mit den Person zusammengefügt








                BufferedReader eingabe = new BufferedReader(new InputStreamReader (System.in) );


                Person person01 = new Person();

                PersonAddress paddress01 = new PersonAddress();


		String tastatur;

		try

		{

			System.out.println("Bitte Geben Sie den Namen ein :");

			tastatur = eingabe.readLine();

                        person01.setName(tastatur);


                        System.out.println("Bitte Geben Sie die Telefonnummer ein :");

                        tastatur = eingabe.readLine();

                        person01.setTel(tastatur);



                        System.out.println("Bitte Geben Sie das Alter ein :");


                        tastatur = eingabe.readLine();


                        Integer test = new Integer(tastatur);

                        String test1 = new String();

                        test1        = test.toString();

                        person01.setAge(test1);












               }


		catch(IOException e)

		{

			System.out.print("Fehler bei der Eingabe!");

		}





		Vector v = new Vector();


                v.addElement(person01);


		Enumeration e;


                Person currentPerson;




		for (e = v.elements() ; e.hasMoreElements() ; )

		{

			currentPerson = (Person)e.nextElement();

		  	System.out.println("Name: " + currentPerson.name()  );

                        System.out.println("Telefonnummer: " + currentPerson.tel()  );

                        System.out.println("Alter: " + currentPerson.age()  );


		}


	}






}

 

aber das geht leider auch nicht!!!

bekomme diese fehlermeldung:

C:\Java\Project>javac Test.java

Test.java:50: setAge(int) in Person cannot be applied to (java.lang.String)

person01.setAge(test1);

^

1 error

gicio

Geschrieben

Probiers mal mit setAge( Integer.parseInt(test1) ), da deine Funktion setAge eine Zahl will und kein String.

Integer.parseInt() wandelt ein String in ein int-Wert um.

zu der anderen Sache mit int nach String umwandeln:

int x = 1;

String temp=""+x;

<FONT COLOR="#a62a2a" SIZE="1">[ 20. November 2001 17:26: Beitrag 1 mal editiert, zuletzt von TuTuT ]</font>

Geschrieben

Also,

1. wenn man einen TYP int hat kann man den nicht mit der Methode toString() in einen String konvertieren, da ein int keinen Objekt ist, folglich auch keine Methoden hat. Selbiges gilt für die Typen boolean, long, float und double. Anders sieht das bei den gleichnamigen Objekten Boolean, Integer, Long, Float und Double aus, die haben Methoden, diese kann man aber nicht zusammen mit Operatoren verwenden (+-*/% etc.)!

2. Wenn ihr eine Variable vom Typ String anlegt muss man die nicht zuerst mit einem new String() füllen, wenn man eine Zeile weiter eine andere Instanz von String da reinstellt ( Integer.toString() != new String() )! Damit erzeugst Du eine Variable und stellst (losgelöst davon) eine neue Instanz von String in die Variable. Eine Zeile darunter ( test1 = new String(); ) füllst Du die Variable mit einer ANDEREN Instanz von String, damit gibt's keine Referenz mehr auf das leere String-Objekt und du der GarbageCollector schmeißt sie weg.

3. CONSTRUCTOREN BENÖTIGEN VIEL RUNTIME!!! Aus diesem Grund sollte man Constructors vermeiden wo's geht! Ich würde für das Problem der Typkonvertierung von String zu Int & revers folgendes Beispiel vorschlagen:

BufferedReader br = new BufferedReader( new InputStreamReader (System.in) );

Person person01 = new Person();

PersonAddress paddress01 = new PersonAddress();


try {

   System.out.println("Bitte Geben Sie das Alter ein :");

   String in = br.readLine();

   try {

      int age = Integer.parseInt( in );

   } catch( NumberFormatException nfe ) {

      System.out.println( "could not parse input!" );

   }   

} catch( IOException ioe ) {

   System.out.print("Fehler bei der Eingabe!");

}

Natürlich muss man sich da noch eine Schleife rumbauen um dann, wenn man den input nicht parsen konnte, eine erneute Eingabe verlangen zu können.

Ich wünsche viel Spaß, und fangt endlich mal an doku zu lesen! ;-)

Am besten ihr ladet euch von java.sun.com die javadoc zu eurer jdk runter (gibt's als Zip), und wenn ihr schon drauf seit gleich ein paar tutorials &somore.

Cheers,

Ralf

Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren

Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können

Benutzerkonto erstellen

Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!

Neues Benutzerkonto erstellen

Anmelden

Du hast bereits ein Benutzerkonto? Melde Dich hier an.

Jetzt anmelden

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Weiterlesen  

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...