Шта је језик за изражавање (ЕЛ)?
Изразни језик (ЕЛ) је механизам који поједностављује приступ подацима ускладиштеним у компоненти Јава зрна и другим објектима попут захтева, сесије и апликације итд. У ЈСП-у постоје многи оператори који се у ЕЛ користе као аритметички и логички оператори за извршавање израз. Представљен је у ЈСП 2.0
У овом упутству ћете научити-
- ЈСП синтакса језика израза (ЕЛ)
- ЈСП ако не
- ЈСП Свитцх
- ЈСП за петљу
- ЈСП вхиле петља
- ЈСП оператори
ЈСП синтакса језика израза (ЕЛ)
Синтакса ЕЛ : $ (израз)
- У ЈСП-у, све што је присутно у заградама процењује се током извођења послатог у излазни ток.
- Израз је важећи ЕЛ израз и може се мешати са статичким текстом и може се комбиновати са другим изразом да би се добио већи израз.
Да бисмо добили бољу представу о томе како израз делује у ЈСП-у, видећемо пример у наставку.
У овом примеру видећемо како се ЕЛ користи као оператор за сабирање два броја (1 + 2) и добијање резултата.
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП1 титле>хеад><боди><а> Израз је: а>$ {1 + 2};боди>хтмл>
Објашњење кода:
- Линија кода 11: Језик израза (ЕЛ) постављен је тако да додајемо два броја 1 + 2, па ће се излаз добити као 3.
Када извршите горњи код, добићете следећи излаз.
Излаз :
- Израз је: 3 (Како ће бројеви 1 + 2 бити додати и служити као излаз)
Изјаве о контроли протока:
ЈСП пружа моћ Јаве која се уграђује у апликацију. Можемо користити све АПИ-је и градивне блокове Јава-е у ЈСП програмирању, укључујући наредбе контролног тока које укључују доношење одлука и наредбе петље.
Постоје две врсте изјава о контроли протока описане у наставку;
- Изјаве о доношењу одлука
- Изјаве петље
Изјаве о доношењу одлука:
Изјава о доношењу одлука у ЈСП заснива се на томе да ли је скуп услова тачан или нетачан. Изјава ће се понашати у складу с тим.
У наставку су описане две врсте изјава о одлучивању:
- Ако друго
- прекидач
ЈСП ако не
Израз "Ако је другачије" основни је за све наредбе тока контроле и говори програму да изврши одређени одељак кода само ако одређени тест процени као тачно.
Овај услов се користи за испитивање више услова да ли су тачни или нетачни.
- Ако је први услов тачан, тада се извршава „иф блоцк“ и
- ако је нетачно, извршава се „елсе блоцк“
Синтакса за иф - елсе наредбу :
If(test condition){//Block of statements}else{//Block of statements}
У овом примеру,
Испробаћемо услов „иф елсе“ узимајући променљиву и проверавајући вредност да ли се променљива подудара са оним што је иницијализована:
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП2 титле>хеад><боди><%! инт месец = 5; %><% иф (месец == 2) {%><а> Његов фебруар а><%} остало {%><а> Било који месец осим фебруара а><%}%>боди>хтмл>
Објашњење кода:
- Редак кода 10: Променљива са именом месец је иницијализована на 5 у ознакама израза
- Линија кода 11: У ЕЛ таговима постоји „иф цондитион“ који наводи да ако је месец једнак 2 (овде се стање тестира као тачно или нетачно)
- Редак кода 12: Ако је тачан услов да је променљива месец 2, исписат ће се у излазни ток
- Линија кода 13-15: Ако горе наведено ако услов не успије, премјестиће се у други дио за све остале случајеве гдје ће се испис исписати у излазни ток, а услов затворити
Када извршите горњи код, добићете следећи излаз.
Излаз:
- Пошто је месец који имамо 5, што није једнако # 2 (фебруар). Отуда имамо излаз „Било који месец осим фебруара“ (месец се помиње као 5, па се и други извршавају)
ЈСП Свитцх
Тело наредбе прекидача назива се „преклопни блок“.
- Прекидач се користи за проверу броја могућих путања извршења.
- Прекидач се може користити са свим типовима података
- Изјаве прекидача садрже више од једног случаја и један подразумевани случај
- Процењује израз, а затим извршава све изразе након одговарајућег случаја
Синтакса за наредбу свитцх :
switch (operator){Case 1:Block of statementsbreak;Case 2:Block of statementsbreak;case n:Block of statementsbreak;default:Block of statementsbreak;}
- Преклопни блок започиње једним параметром, а то је оператор којем треба проследити и
- Затим постоје различити случајеви који пружају услов и шта год се подудара са оператором тај случај се извршава.
У доњем примеру,
Дефинисали смо променљиву недељу и она се подудара са случајем који год да је тачан. У овом случају, недеља је 2, дакле подудара се други случај, а излаз је уторак:
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП3 титле>хеад><боди><%! инт седмица = 2; %><% пребацивање (недељно) {случај 0:оут.принтлн ("Недеља");пауза;случај 1:оут.принтлн ("Понедељак");пауза;случај 2:оут.принтлн ("уторак");пауза;случај 3:оут.принтлн ("среда");пауза;случај 4:оут.принтлн ("четвртак");пауза;случај 5:оут.принтлн („петак“);пауза;Уобичајено:оут.принтлн ("Субота");}%>боди>хтмл>
Објашњење кода:
- Редак кода 10: Променљива са именом недеље иницијализује се на 2 у ознакама израза
- Линија кода 11: У ЕЛ таговима започиње случај пребацивања где се недеља прослеђује као параметар
- Редак 12 - 29: Споменути су сви случајеви, почев од случаја 0 до случаја 5, где се вредност параметра недеље подудара са падежима, а у складу с тим се исписује. У овом случају, вредност је 2, па ће се у овом случају извршити случај 2. Овде је "оут" класа ЈСП која пише излазни ток за генерисани одговор, а "принтлн" је метода те класе.
- Редак кода 30-32: Ако горњи сви случајеви не успеју, прећи ће на задати део и извршити се, где ће се испис исписати у излазни ток, а услов је затворен
Када извршите горњи код, добићете следећи излаз.
Излаз:
- Резултат у овом случају је уторак, како се назива други случај.
Изјаве петље
ЈСП за петљу
Користи се за понављање елемената за одређено стање и има три параметра.
- Бројач променљивих је иницијализован
- Услов док се петља не изврши
- Бројач мора бити увећан
Синтакса петље:
For(inti=0;iУ овом примеру,
Имамо фор петљу која се понавља док бројач није мањи од датог броја:
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП4 титле>хеад><боди><%! инт нум = 5; %><% оут.принтлн ("Бројеви су:");за (инт и = 0; и <нум; и ++) {оут.принтлн (и);}%>боди>хтмл>Објашњење кода:
- Кодни ред 10: Променљива под називом „нум“ иницијализује се на 5 у ознакама израза
- Линија кода 11-14: У ЕЛ таговима „оут“ је класа ЈСП-а, а „принтлн“ је метода којом се започиње испис у излазном току и фор лооп која има три параметра:
- Варијабла и је иницијализована на 0,
- Услов је дат тамо где је и мање од локалне променљиве нум,
- И ја се увећава сваки пут у току понављања временске петље.
У телу „форлооп“ постоји класа ЈСП која штампа у излазни ток методом принтлн где исписујемо променљиву и.
Када извршите горњи код, добићете следећи излаз.
Излаз:
- Излазни бројеви су 0 1 2 3 4. У овом примеру дајемо услов да све док бројач није мањи од променљиве треба извршити „фор лооп“. Број је 5, тако да ће петља почети од 0 и трајати до 4 (5 пута). Отуда и излаз.
ЈСП вхиле петља
Користи се за понављање елемената у којима има један параметар стања.
Синтакса:
While(iУ овом примеру,
Имамо вхиле петљу која ће понављати све док дан не буде већи од бројача:
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП5 титле>хеад><боди><%! инт дан = 2; инт и = 1; %><% док (дан> = и) {иф (дан == и) {оут.принтлн ("Понедељак је");пауза;}и ++;}%>боди>хтмл>Објашњење кода:
- Кодни ред 10: Променљива под називом и иницијализује се на 1, а дан је 2 у ознакама израза
- Линија кода 11-17: У ЕЛ ознакама постоји „вхиле лооп“ ће се понављати док не поставимо услов као да је дан већи или једнак и променљива ће бити истинита. (дан> = и)
Унутар тога постоји "ако је услов" (дан је једнак и) и "ако је услов" тачно, он ће исписати излазни ток и изаћи ће из петље вхиле, променљива и се повећава и петља се понавља.
Када извршимо код, имат ћемо сљедећи излаз
Излаз је:
- Резултат овог кода биће „његов понедељак“.
ЈСП оператори
ЈСП Оператори подржавају већину својих аритметичких и логичких оператора који су подржани од стране Јава-а у оквиру језика израза (ЕЛ).
У наставку су наведени често коришћени оператори:
Следе оператери:
. Приступите својству пасуља или уносу на мапи [] Приступите низу или елементу Листа () Групирајте подизраз да бисте променили редослед оцењивања + Сабирање - Одузимање или негација вредности * Множење / или див Дивизија % или мод Модуло (остатак) == или екв Тест за једнакост ! = или не Тест за неједнакост <или лт Тест за мање од > или гт Тест за веће од <= или ле Тест за мање или једнако > = или ге Тест за веће или једнако && или и Тест за логичко И || или или Тест за логично ИЛИ ! или не Унарни логички комплемент Празно Тест за празне вредности променљивих У овом примеру,
- Декларишемо две променљиве нум1 и нум2, а затим узмемо променљиву нум3, где користимо ЈСП оператор + тако што ћемо додати нум1 и нум2 и добити нум3.
- Затим проверавамо услов да ли нум3 није једнак 0 помоћу ЈСП оператора (! =,>) И
- Затим узмимо другу променљиву нум4 множењем два нум1 и нум2 добијамо нум4.
Ове све бројеве треба исписати као наш излаз:
<% @ паге лангуаге = "јава" цонтентТипе = "тект / хтмл; цхарсет = ИСО-8859-1"пагеЕнцодинг = "ИСО-8859-1"%><хтмл><хеад><мета хттп-екуив = "Цонтент-Типе" цонтент = "тект / хтмл; цхарсет = ИСО-8859-1"><титле> Гуру ЈСП6 титле>хеад><боди><% инт нум1 = 10; инт нум2 = 50;инт нум3 = нум1 + нум2;иф (нум3! = 0 || нум3> 0) {инт нум4 = нум1 * нум2;оут.принтлн ("Број 4 је" + број4);оут.принтлн ("Број 3 је" + број3);}%>боди>хтмл>Објашњење кода:
- Редак кода 10: Променљива са именом нум1 иницијализује се у 10, а нум2 у 50 у ознакама израза
- Линија кода 11: Променљива нум3 је збир нум1 и нум2 где користимо оператор сабирања
- Линија кода 12-16: У ЕЛ таговима користили смо услов ИЛИ који је логички оператор и аритметички оператор да бисмо проверили да ли је нум3 већи од 0 у услову иф. ИЛИ се користи када је било који услов тачан, у том случају ће ући у „иф цасе“ где множимо два броја „нум1“ и „нум2“ и добијамо излаз у „нум4“ и исписат ће излазни ток.
Када извршите горњи код, добићете следећи излаз.
Излаз:
- Први излаз је број 4 је 500 (променљива нум4 која је нум1 * нум2)
- Други излаз је број 3 је 60 (променљива нум3 која нум1 + нум2)
Резиме:
- ЈСП Екпрессион Лангуаге (ЕЛ) олакшава приступ апликацији за податке ускладиштене у јавабеанс компонентама.
- Такође омогућава креирање израза који су и аритметички и логички.
- Унутар ЕЛ тагова можемо користити целе бројеве. Бројеви с помичним зарезом, низови и логичке вриједности.
- У ЈСП такође можемо користити петље и изјаве за доношење одлука користећи ЕЛ тагове