/ 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
Boolean string
Fra : weaxler


Dato : 08-11-02 16:03

Er der en smart måde i Java som understøtter evalueringen af et hvilket som
helst boolsk udtryk som er gemt i en string som eks..

String booleanExpression = "23>10 && 22<10 && 22<22";

udtrykkende bliver bygget op af følgende operatorer:
> < &&

og evalueringen skal være general, dvs. kunne anvendes på et hvilket som
helst udtryk..

Skal kunne anvendes under java 1.3

/Dan



 
 
Mikkel Bundgaard (10-11-2002)
Kommentar
Fra : Mikkel Bundgaard


Dato : 10-11-02 11:17

On Fri, 08 Nov 2002 16:02:43 +0100, weaxler wrote:

> Er der en smart måde i Java som understøtter evalueringen af et hvilket
> som helst boolsk udtryk som er gemt i en string som eks..
>
> String booleanExpression = "23>10 && 22<10 && 22<22";
>
> udtrykkende bliver bygget op af følgende operatorer:
>> < &&
>
> og evalueringen skal være general, dvs. kunne anvendes på et hvilket som
> helst udtryk..
Der findes ikke i Java en eval metode kendt fra andre sprog. Men med dine
meget simple udtryk burde det være en smal sag at opbygge en lille
metode, som kan evaluere udtrykkene.

Først opdel din udtryk i deludtryk (brug f.eks. en StringTokenizer). Da
disse deludtryk er "sat sammen" af && kan du bare evaluere hvert
deludtryk, og returnere falsk hvis du møder et deludtryk, der evaulerer
til falsk og sand hvis alle deludtryk evaluerer til sand.

Hvert deludtryk kan evalueres ved at du opsplitter udtrykket i tre dele
(igen vha. en StringTokenizer): første tal, operator og andet tal.

Håber du kan bruge det til noget
--
Mikkel Bundgaard
Student at IT University of Copenhagen
http://officehelp.gone.dk
Codito, Ergo Sum

Søg
Reklame
Statistik
Spørgsmål : 177558
Tips : 31968
Nyheder : 719565
Indlæg : 6408907
Brugere : 218888

Månedens bedste
Årets bedste
Sidste års bedste