java语言中,是++优先还是*优先?计算的优先顺序是?例:z=y*x++,其中x=5,y=9,答案是?还有,++x和x++ java中为什么y=++x+x*5和y=x*5+ ++x结果...

C\u8bed\u8a00\uff1a\u5df2\u6709\u5b9a\u4e49int x=3,y=4,z=5;\u5219\u8868\u8fbe\u5f0f !(x+y)+z-1&&y+z/2\u7684\u503c\u662f\uff1f

\u7b54\u6848\u662f1\u3002
\u6d89\u53ca\u5230\u7684\u8fd0\u7b97\u7b26\uff1a ! () + - && /
\u8fd0\u7b97\u7b26\u4f18\u5148\u7ea7\u4e3a\uff1a() ! / + - &&
\u8fd0\u7b97\u8fc7\u7a0b\uff1a
x=3,y=4,z=5
!(x+y)+z-1&&y+z/2
!(3+4)+5-1&&4+5/2
\u6240\u4ee5\u8868\u8fbe\u5f0f\u8ba1\u7b97\u6b65\u9aa4\u4e3a
!(3+4)+5-1&&4+5/2 -> !7+5-1&&4+5/2
!7\u4e3a 0
-> 0+5-1&&4+5/2
5/2 \u6574\u6570\u9664\u6574\u6570\u5f97\u6574\u6570 2
-> 0+5-1&&4+2
-> 4&&6
\u903b\u8f91\u8fd0\u7b97 &&

\u6269\u5c55\u8d44\u6599
C\u8bed\u8a00\u8fd0\u7b97\u7b26\u7684\u4f18\u5148\u7ea7\uff1a

\u5982\u679c\u540c\u4e00\u4f18\u5148\u7ea7\u7684\u8fd0\u7b97\u7b26\uff0c\u7ed3\u5408\u6b21\u5e8f\u7531\u7ed3\u5408\u65b9\u5411\u6240\u51b3\u5b9a\u3002
\u53c2\u8003\u8d44\u6599\u6765\u6e90\uff1a\u767e\u5ea6\u767e\u79d1-\u8fd0\u7b97\u7b26\u4f18\u5148\u7ea7

\u5f53\u7136\u4e0d\u4e00\u6837\u4e86
y=++x+x*5\uff1b\uff08\u8fd9\u91cc\u5047\u8bbeX=4\uff09
\u9996\u5148++x\u540e x=5\uff1b\u7136\u540e5+x*5=5+5*5=30\uff1b\u6240\u4ee5\u7ed3\u679c\u662f30
y=x*5+ ++x\uff1b\uff08\u8fd9\u91cc\u5047\u8bbeX=4\uff09
\u9996\u5148X*5\u5f97\u523020 \uff08x\u4f9d\u7136\u662f4\uff09\uff1b\u7136\u540e20+\uff08++x\uff09=20+5=25\uff1b\u6240\u4ee5\u7ed3\u679c\u662f25

Java中的运算符按优先级从高到低排列如下:[ ] ( ) ++ -- ! ~ instanceof * / % + - << >> >>> <> < = > \ == != &^& & || ? := op= 。具体解释如下:
--运算符用于表示减1操作。++和--运算符既可以作为前缀运算符,也可以做为后缀运算符。双目整数运算符是:运算符操作**+加-减*乘/除%取模&位与|位或^位异或<<左移 >>右移(带符号) >>>添零右移整数除法按零舍入。
如果X=5,y=9.z=y*x++应该按着运算符的优先级先算X++,再算y*X++所以Z=5*9=45.
下面在解释++X和X++。如果X++意思是先引用,后自增,就如上题。X=5,X此时等于5,当下次循环再用到X时,X就等于6了,因为X++后就是6。而++X正好相反,当X=5,++X后X此时等于6。下次循环引用时是7。所以他是先自增后引用。理解了后就记住,++X是先自增后引用,而X++是先引用后自增。解释完毕,求给分,全手打不容易。

++优于*
x=5,y=9。则z=y*x++=45,此时,x=6,y=9;
++x是自增1后相运算,而x++是运算后自加1。
希望对你有所帮助

++优先,
z=y*x++后,z=45.但运算得出z值后x自加1.

答案是45
++x是前缀自增运算,立即生效,没有运算延迟,如这道题改为z=y*++x,那么结果是z=9*6=54,也就是先自增变成x=6再运算z=9*6。
x++是后缀自增运算,延迟生效,有运算延迟,如这道题,z=y*x++,那么结果是z=9*5=45,也就是先运算z=9*5,之后x自增变成x=6,这个值在下一语句开始生效。

答案是45,*优先,++x是先运算后赋值,x++是先赋值后运算

  • JAVA鐨杩愮畻绗︾殑浼樺厛绾ф槸浠涔堟牱鐨?
    绛旓細鎵鏈夌殑鏁板杩愮畻閮借涓烘槸浠庡乏鍚戝彸杩愮畻鐨锛孞ava 璇█涓澶ч儴鍒嗚繍绠楃涔熸槸浠庡乏鍚戝彸缁撳悎鐨勶紝鍙湁鍗曠洰杩愮畻绗︺佽祴鍊艰繍绠楃鍜屼笁鐩繍绠楃渚嬪锛屽叾涓紝鍗曠洰杩愮畻绗︺佽祴鍊艰繍绠楃鍜屼笁鐩繍绠楃鏄粠鍙冲悜宸︾粨鍚堢殑锛屼篃灏辨槸浠庡彸鍚戝乏杩愮畻銆傚彟澶栵紝Java 璇█涓繍绠楃鐨浼樺厛绾у叡鍒嗕负 14 绾э紝鍏朵腑 1 绾ф渶楂橈紝14 绾ф渶浣庛
  • java璇█涓,鏄++浼樺厛杩樻槸*浼樺厛?璁$畻鐨勪紭鍏堥『搴忔槸?渚:z=y*x++,鍏朵腑x=...
    绛旓細Java涓鐨勮繍绠楃鎸浼樺厛绾т粠楂樺埌浣庢帓鍒楀涓嬶細[ ] ( ) ++ -- ! 锝 instanceof * / % + - << >> >>> <> < = > \ == != &^& & || ? := op= 銆傚叿浣撹В閲婂涓嬶細--杩愮畻绗︾敤浜庤〃绀哄噺1鎿嶄綔銆++鍜--杩愮畻绗︽棦鍙互浣滀负鍓嶇紑杩愮畻绗︼紝涔熷彲浠ュ仛涓哄悗缂杩愮畻绗︺傚弻鐩暣鏁拌繍绠楃鏄細杩愮畻绗...
  • java涓杩愮畻绗︾殑浼樺厛绾ч『搴忔槸鎬庢牱鐨?
    绛旓細姣旇緝杩愮畻绗︼細==銆!=銆>銆<銆≥銆≤銆傝繖浜涜繍绠楃鐨浼樺厛绾т綆浜庤韩浠借繍绠楃锛屼絾楂樹簬绠楁湳杩愮畻绗﹀拰鎷彿銆傝祴鍊艰繍绠楃锛=, +=, -=, *=, /=, %=, <<, >>, &=, ^=, |=銆傝繖浜涜繍绠楃鐨勪紭鍏堢骇浣庝簬姣旇緝杩愮畻绗﹀拰韬唤杩愮畻绗︼紝浣嗛珮浜庢嫭鍙枫傚煎緱娉ㄦ剰鐨勬槸锛屾湁浜璇█鍙兘浼氭牴鎹壒瀹氱殑璇硶瑙勫垯瀵...
  • JAVA閲岄潰杩愮畻绗︾殑濡備綍浣跨敤鍜浼樺厛绾ф庝箞鏍?
    绛旓細浠ヤ笅鎸浼樺厛绾т粠楂樺埌浣庣殑娆″簭鍒楀嚭Java璇█涓鐨勬墍鏈夎繍绠楃,琛ㄤ腑缁撳悎鎬т竴鍒椾腑鐨勨滃乏�8�7鍙斥濊〃绀哄叾杩愮畻娆″簭涓轰粠宸﹀悜鍙,鈥滃彸�8�7宸︹濊〃绀哄叾杩愮畻娆″簭涓轰粠鍙冲悜宸︺ 浼樺厛绾 杩愮畻绗 缁撳悎鎬 1 . [] () ; , 2 ++ 鈥曗 += ! ~ +(涓鍏) -(涓鍏) 鍙�8�7宸 3 * / % 宸�8�7...
  • Java杩愮畻绗︾殑浼樺厛绾т笌缁撳悎鎬ф槸鎬庢牱鐨?
    绛旓細Java涓鐨勮繍绠楃鎸浼樺厛绾т粠楂樺埌浣庢帓鍒楀涓嬶細[ ] ( ) ++ -- ! 锝 instanceof * / % + - << >> >>> <> < = > \ == != &^& & || ? := op= 銆 Java涓暣鏁拌繍绠楃鍦ㄦ暣鏁拌繍绠楁椂锛屽鏋滄搷浣滄暟鏄痩ong绫诲瀷锛屽垯杩愮畻缁撴灉鏄痩ong绫诲瀷锛屽惁鍒欎负int绫诲瀷锛岀粷涓嶄細鏄痓yte锛宻hort鎴朿har鍨嬨
  • Java璇█涓Thread绫荤殑鏈灏浼樺厛绾х殑鍊兼槸
    绛旓細鎵鏈夌殑浼樺厛绾涓紝鍙湁涓変釜浼樺厛绾ф槸浠庡彸鑷冲乏缁撳悎鐨勶紝瀹冧滑鏄崟鐩繍绠楃銆佹潯浠惰繍绠楃銆佽祴鍊艰繍绠楃銆傚叾瀹冪殑閮芥槸浠庡乏鑷冲彸缁撳悎銆傚叿鏈夋渶楂樹紭鍏堢骇鐨勫叾瀹炲苟涓嶇畻鏄湡姝g殑杩愮畻绗︼紝瀹冧滑绠楁槸涓绫荤壒娈婄殑鎿嶄綔銆()鏄笌鍑芥暟鐩稿叧锛孾]涓庢暟缁勭浉鍏筹紝鑰岋紞>鍙.鏄彇缁撴瀯鎴愬憳銆傚叾娆℃槸鍗曠洰杩愮畻绗︼紝鎵鏈夌殑鍗曠洰杩愮畻绗﹀叿鏈夌浉鍚岀殑...
  • 鎯宠嚜瀛︾紪绋嬫槸鍥犺鍏堝java,杩樻槸c璇█鍛
    绛旓細浠庡涔犻毦搴︿笂鏉ョ湅锛孋璇█鏇撮傚悎鍒濆鑰呫備粠搴旂敤鍦烘櫙涓婃潵鐪嬶紝浠庡簲鐢ㄥ満鏅殑骞挎硾鎬т笂鏉ョ湅锛孞ava璇█鍏锋湁涓瀹氱殑浼樺娍锛岃繖涔熶細瀵瑰氨涓氭湁涓瀹氱殑淇冭繘浣滅敤銆備粠鐭ヨ瘑缁撴瀯鐨勮姹傛潵鐪嬶紝瀛︿範C璇█鍜孞ava璇█鏈韩瀵逛簬鍩虹鐨勮姹傞兘涓嶉珮锛屼絾鏄鏋滀粠浜嬬郴缁熺骇寮鍙戯紝鍒欓渶瑕佸叿澶囨搷浣滅郴缁熴佹暟鎹粨鏋勫拰绠楁硶璁捐鏂归潰鐨勫熀纭銆傚鏋滄兂浜嗚В...
  • java涓++ i鍜++鐨勫尯鍒槸浠涔?
    绛旓細3銆佽繍绠楃殑浼樺厛绾т笉鍚岋細i++涓殑鈥++鈥濊繍绠楃鐨勪紭鍏堢骇姣++i涓++鈥濊繍绠楃鐨勪紭鍏堢骇楂樸備緥濡傦細i=1 鎵цc=i++锛屼細鍏堝皢i鍙橀噺鐨勫1璧嬪肩粰c锛岀劧鍚巆=1锛岀劧鍚巌鎵嶇瓑浜2锛屾墽琛宑=++i锛屼細鍏堝皢i鍙橀噺鍔1鍙樻垚2锛岀劧鍚庤祴鍊肩粰c锛宑鐨勫间负2銆Java涓鐨刬++鍜++i鍜孋璇█涓鐨刬++鍜++i鏄竴鏍风殑銆
  • java鏄浠涔
    绛旓細鍥犱负杩欑杩愯鏂瑰紡锛屽彧瑕侀拡瀵逛笉鍚岀殑璁$畻鏈哄钩鍙板噯澶囩浉搴旂殑Java铏氭嫙鏈猴紝灏卞彲浠ュ緢鏂逛究鐨勫疄鐜Java璇█鐨勮法骞冲彴鎬с傚洜姝わ紝Java闈炲父閫傚悎浜庝紒涓氱綉缁滃拰Internet鐜锛岀幇鍦ㄥ凡鎴愪负Internet涓渶鍙楁杩庛佹渶鏈夊奖鍝嶇殑缂栫▼璇█涔嬩竴銆 Java鏈夎澶氬煎緱绉伴亾鐨勪紭鐐癸紝濡傜畝鍗曘侀潰鍚戝璞°佸垎甯冨紡銆佽В閲婃с佸彲闈犮佸畨鍏ㄣ佺粨鏋勪腑绔嬫с佸彲...
  • Java鍏ラ棬蹇呯湅!Java杩愮畻绗(瓒呰缁)
    绛旓細褰撶劧锛屾瘡涓繍绠楃閮芥湁鍏浼樺厛绾ц鍒欙紝璁板緱閫傛椂浣跨敤鎷彿鏄庣‘琛ㄨ揪寮忕粨鏋勩傛繁鍏ョ悊瑙e拰鐔熺粌杩愮敤杩欎簺杩愮畻绗︼紝灏嗚浣犵殑Java缂栫▼鏇村姞娓稿垉鏈変綑銆備笅鏈熷唴瀹规垜浠皢缁х画娣卞叆鎺㈣鏇村缂栫▼缁嗚妭锛屾暚璇锋湡寰咃紒鎰熻阿闃呰锛屾湁浠讳綍鐤戦棶鎴栨兂浜嗚В鏇村锛岃鍏虫敞浜戠婧愭兂IT鍩硅锛屼綘鐨勭煡璇嗚繘姝ワ紝鎴戜滑涓鐩撮櫔浼淬
  • 扩展阅读:为啥都不建议学软件测试 ... priority queue ... c++和java哪个好就业 ... java 优先队列 ... java c++ ... 学java为什么27岁就迟了 ... c++优先队列 ... python和c++学哪个好 ... 为什么都不建议java转测试 ...

    本站交流只代表网友个人观点,与本站立场无关
    欢迎反馈与建议,请联系电邮
    2024© 车视网