/ Forside / Teknologi / Udvikling / Java / Nyhedsindlæg
Login
Glemt dit kodeord?
Brugernavn

Kodeord


Reklame
Top 10 brugere
Java
#NavnPoint
molokyle 3688
Klaudi 855
strarup 740
Forvirret 660
gøgeungen 500
Teil 373
Stouenberg 360
vnc 360
pmbruun 341
10  mccracken 320
Kan en string referere til en final?
Fra : Jacob Vandborg


Dato : 28-04-01 21:55

Hejsa allesammen.

Her er et, måske lidt, tricky spørgsmål.

Er det muligt at få en string til at refere til en konstant.

Ex.:
public class temp {
final static TEST = 1;
String str = "TEST";
int tal = temp.str;
System.out.println("" + tal);
}
Output:
1

Eller skal man have det over i en if-sætning?

På forhånd tak,
Jacob




 
 
Morten Breum Mikkels~ (28-04-2001)
Kommentar
Fra : Morten Breum Mikkels~


Dato : 28-04-01 22:54

In article <9cfaos$mfj$1@news.inet.tele.dk>, "Jacob Vandborg"
<fireman@linux.eucsyd.dk> wrote:

> Her er et, måske lidt, tricky spørgsmål.

Det er lidt svært at se hvad du prøver på med din kode.
Er det sådan noget som

final static int INTVAR = 1;
String s = "" + INTVAR;

du er ude efter?
--
Morten
-This court finds you not guilty, and you are to be set free at once.
-Can I keep the money, then?

Ulrik Magnusson (28-04-2001)
Kommentar
Fra : Ulrik Magnusson


Dato : 28-04-01 22:59

Jacob Vandborg wrote:

> Er det muligt at få en string til at refere til en konstant.
> Ex.:
> public class temp {
> final static TEST = 1;
> String str = "TEST";
> int tal = temp.str;
> System.out.println("" + tal);
> }
> Output:
> 1

Du skal bruge reflection, for at lave den slags tricks:

class T
{
int TEST = 1;// final eller ej - du skal have fat i medlemmet, der
hedder "TEST"
String str = "TEST";
public static void main( String[] args ) throws Exception
{
T t = new T();
Class c = t.getClass();
java.lang.reflect.Field f = c.getDeclaredField( t.str );
int i = f.getInt( t );
System.out.println( i );
}
}

Som du kan se, er det meget besværligt (og jeg har endda "snydt"
med undtagelserne ved at lade main smide dem videre).

Du burde måske overveje noget andet, men jeg kan ikke lige se,
hvad du vil.

Ulrik Magnusson

--
"I'm a big tough man with a big tough plan
gonna spend my day in a big tough way"
Adam & the Ants - "5 Guns West", Prince Charming 1981
Visit my home page: http://www.geocities.com/ulrikm



Jacob Vandborg (29-04-2001)
Kommentar
Fra : Jacob Vandborg


Dato : 29-04-01 21:50

Hejsa Ulrik

Tak for dit svar, men du skal jo også lige have meningen med galskaben.
Jeg er ved at lave en FTP server, og alle kommandoer fra klienten foregår
i tekststrenge. Jeg ville derfor definere alle kommandoerne som int's og
lade
strengene refere til dem, men jeg kan godt se at det er lidt besværligt.

Mvh. Jacob

"Ulrik Magnusson" <ulrikm@yahoo.com> wrote in message
news:3AEB3D20.D4B2C238@yahoo.com...
> Jacob Vandborg wrote:
>
> > Er det muligt at få en string til at refere til en konstant.
> > Ex.:
> > public class temp {
> > final static TEST = 1;
> > String str = "TEST";
> > int tal = temp.str;
> > System.out.println("" + tal);
> > }
> > Output:
> > 1
>
> Du skal bruge reflection, for at lave den slags tricks:
>
> class T
> {
> int TEST = 1;// final eller ej - du skal have fat i medlemmet, der
> hedder "TEST"
> String str = "TEST";
> public static void main( String[] args ) throws Exception
> {
> T t = new T();
> Class c = t.getClass();
> java.lang.reflect.Field f = c.getDeclaredField( t.str );
> int i = f.getInt( t );
> System.out.println( i );
> }
> }
>
> Som du kan se, er det meget besværligt (og jeg har endda "snydt"
> med undtagelserne ved at lade main smide dem videre).
>
> Du burde måske overveje noget andet, men jeg kan ikke lige se,
> hvad du vil.
>
> Ulrik Magnusson
>
> --
> "I'm a big tough man with a big tough plan
> gonna spend my day in a big tough way"
> Adam & the Ants - "5 Guns West", Prince Charming 1981
> Visit my home page: http://www.geocities.com/ulrikm
>
>



Thames (30-04-2001)
Kommentar
Fra : Thames


Dato : 30-04-01 15:06


"Jacob Vandborg" <fireman@linux.eucsyd.dk> wrote in message
news:9chusj$q4j$1@news.inet.tele.dk...
> Hejsa Ulrik
>
> Tak for dit svar, men du skal jo også lige have meningen med galskaben.
> Jeg er ved at lave en FTP server, og alle kommandoer fra klienten foregår
> i tekststrenge. Jeg ville derfor definere alle kommandoerne som int's og
> lade
> strengene refere til dem, men jeg kan godt se at det er lidt besværligt.

Ville det ikke være meget nemmere med en Hashtable eller sådan???
Jeg mener det er vel derfor man har opfundet Hashtable's...

Mvh. Thames



Søg
Reklame
Statistik
Spørgsmål : 177501
Tips : 31968
Nyheder : 719565
Indlæg : 6408527
Brugere : 218887

Månedens bedste
Årets bedste
Sidste års bedste