CHRIS_MALL Δημοσ. 3 Μαρτίου 2007 Δημοσ. 3 Μαρτίου 2007 Πως μπορώ να μετατρέψω ένα integer σε string?? Θέλω να γράψω την drawString αλλά κάποιων αριθμών που ακολουθούν μία πρόοδο οπότε θέλω να έχουν αντί για String αριθμούς να εμφανίζονται! Thanx a lot!!
pusher Δημοσ. 3 Μαρτίου 2007 Δημοσ. 3 Μαρτίου 2007 Για δοκίμασε έτσι: >int a = 10; String str = new Integer(a).toString()
CHRIS_MALL Δημοσ. 3 Μαρτίου 2007 Μέλος Δημοσ. 3 Μαρτίου 2007 Σε ευχαριστώ πάρα πολύ φίλε μου!! Άψογος πραγματικά!! Μήπως ξέρεις και πως χρησιμοποιύμε την set Background για να ορίσουμε για χρώμα ένα συγκεκριμένο χρώμα?? ok ok ... το βρήκα!! Thanks a lot!!
pusher Δημοσ. 3 Μαρτίου 2007 Δημοσ. 3 Μαρτίου 2007 H setBackground συντάσετται έτσι: >public void [b]setBackground[/b]([url="http://java.sun.com/j2se/1.4.2/docs/api/java/awt/Color.html"]Color[/url] c) Ρίξε μια ματιά εδώ για περισσότερες πληροφορίες πάνω στην κλάση Color (java.awt.Color). Ποια έκδοση της Java χρησιμοποιείς; Σε συμβουλέυω να κατεβάσεις το API, αλλιώς δε θα βρίσκεις άκρη με τις τόσες συναρτήσεις!
Cue Δημοσ. 3 Μαρτίου 2007 Δημοσ. 3 Μαρτίου 2007 Ο τρόπος που έδωσε ο pusher ναι μεν κάνει δουλειά αλλά δεν ενδείκνυται και αυτό γιατί κάθε φορά δημιουργείς ένα νέο object (Integer). Use > String.valueOf(int) String Javadoc In any case use the Javadoc.
Επισκέπτης Δημοσ. 4 Μαρτίου 2007 Δημοσ. 4 Μαρτίου 2007 H poio swsth me8odos (kata thn gnwmh mou panta) einai h ekshs: int x = 5; String str = Integer.toString(x);
Cue Δημοσ. 4 Μαρτίου 2007 Δημοσ. 4 Μαρτίου 2007 Και αυτή σωστή. Ο κώδικας της Integer#toString(int) στην ουσία καλή την String#valueOf(int) > public static String toString(int i) { return String.valueOf(i); }
Cue Δημοσ. 5 Μαρτίου 2007 Δημοσ. 5 Μαρτίου 2007 Σε περιπτώσεις όπου έχουμε να κάνουμε concatenate αρκετά String(s) και numbers θα χρησιμοποιούσα το παραπάνω notation του Dikemou. Για ένα απλό conversion όμως όχι. Π.χ. > String foo = "foo" + 10 + "bar" + 20 + "foobar" + 30 + "barfoo" + 100 Αντί για > String foo = "foo" + String.valueOf(10) + "bar" + String.valueOf(20) + "foobar" + String.valueOf(30) + "barfoo" + String.valueOf(100) Ο compiler κάνει αρκετά "optimizations" στο class αρχείο (πολλές φορές ugly βάσει του κώδικα που έχουμε γράψει). Source > int a=10; String s = a+""; Compiled > byte byte0 = 10; String s = (new StringBuilder()).append(byte0).append("").toString(); Βάζοντας ένα απλό final στην δήλωση του ακεραίου όμως δείτε πως αλλάζει Compiled > String s = "10"; Δείτε και τα 2 παραγόμενα class αρχεία από το αρχικό παράδειγμα. Compiled > String foo = "foo10bar20foobar30barfoo100"; Compiled > String foo = (new StringBuilder()).append("foo").append(String.valueOf(10)).append("bar").append(String.valueOf(20)).append("foobar").append(String.valueOf(30)).append("barfoo").append(String.valueOf(100)).toString();
Επισκέπτης Δημοσ. 5 Μαρτίου 2007 Δημοσ. 5 Μαρτίου 2007 Nice one, Thanks cue PS. Me poio proggie kaneis decompile ?
myle Δημοσ. 6 Μαρτίου 2007 Δημοσ. 6 Μαρτίου 2007 Ευχαριστώ για τον Jad. Ο αντίστοιχος κώδικας σε C++: > #include <stringstream> stringstream asdf; string str1 = "12341234adf"; int a = 0; asdf << str1; asdf >> a; cout << a;
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.