У овом одељку ћемо научити оператер предност у Јави заједно са примерима.
Шта је приоритет оператора?
Тхе приоритет оператора представља како су два израза повезана заједно. У изразу, он одређује груписање оператора са операндима и одлучује како ће израз бити евалуиран.
Приликом решавања израза морају се имати на уму две ствари, прва је а предност а други је асоцијативност .
листноде јава
Предност
Приоритет је приоритет за груписање различитих типова оператора са њиховим операндима. Има смисла само ако израз има више од једног оператора са већим или мањим приоритетом. Оператери који имају већи приоритет се прво процењују. Ако желимо прво да проценимо операторе нижег приоритета, морамо да групишемо операнде користећи заграде, а затим да проценимо.
Асоцијативност
Морамо пратити асоцијативност ако израз има више од два оператора истог приоритета. У таквом случају може се решити и израз с лева надесно или десна на лево, према томе.
удп протокол
Табела приоритета Јава оператера
Следећа табела описује приоритет и асоцијативност оператора који се користе у Јави.
Предност | Оператер | Тип | Асоцијативност |
---|---|---|---|
петнаест | () [] · | Заграде Низ индекс Избор чланова | С лева надесно |
14 | ++ -- | Унарни пост-инкремент Унарни пост-декремент | Десна на лево |
13 | ++ -- + - ! ~ (тип) | Унарни пре-инкремент Унарни пре-декремент Унари плус Унарни минус Унарна логичка негација Унарни битски додатак Унарни тип ливења | Десна на лево |
12 | * / % | Множење дивизије Модул | С лева надесно |
Једанаест | + - | Додатак Одузимање | С лева надесно |
10 | << >> >>> | Побитно померање улево Померање удесно по биту са проширењем знака Померање удесно по биту са нултим проширењем | С лева надесно |
9 | < <= > >= инстанцеоф=> | Релациона мање од Релациона мања или једнака Релациона већа од Релациона већа или једнака Поређење типова (само објекти) | С лева надесно |
8 | == != | Релациона је једнака Релација није једнака | С лева надесно |
7 | & | Битвисе АНД | С лева надесно |
6 | ^ | Ексклузивно ОР | С лева надесно |
5 | | | Битова укључено ОР | С лева надесно |
4 | && | Логично И | С лева надесно |
3 | || | Логично ОР | С лева надесно |
2 | ? : | Тернарни условни | Десна на лево |
1 | = += -= *= /= %= | Додељивање Задатак сабирања Задатак одузимања Задатак множења Дивизијски задатак Задатак модула | Десна на лево |
Напомена: Већи број је већи од приоритета.
Пример приоритета Јава оператера
Хајде да разумемо приоритет оператора кроз пример. Размотрите следећи израз и погодите одговор.
1 + 5 * 3
Можда мислите да би одговор био 18 али није тако. Зато што оператор множења (*) има већи приоритет од оператора сабирања (+). Дакле, израз прво вреднује 5*3, а затим оцењује преостали израз, тј. 1+15. Дакле, одговор ће бити 16 .
јава лоцалдатетиме
Хајде да видимо још један пример. Размотрите следећи израз.
x + y * z / k
У горњем изразу, * и / операције се изводе испред + због приоритета. и се множи са з пре него што се подели са к због асоцијативности.