java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4365|回复: 2

很怪异的java程序题 好多人都不知道为什么

[复制链接]
  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2062

    主题

    3720

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66592

    宣传达人突出贡献优秀版主荣誉管理论坛元老

    发表于 2015-4-22 21:40:16 | 显示全部楼层 |阅读模式
    今天在java自学网群中有人提出了一个关于java程序的运行结果的疑惑,大家快过来帮忙解答下:1 N  W! ?- w4 I; r$ Q# I3 c
    public static void main(String[] args) throws UnsupportedEncodingException {% O. P! n4 t5 G; G/ F7 O+ A
                    boolean bool=false;
    7 G. V- ]% X! Z* i2 R5 S( j                if(bool=false||bool==false){* P' M6 k+ t- I3 c$ h" g. ~
                            System.out.println("真"+bool);
    & s  K: l7 W8 J; q                }else{
    8 E" ]: T$ \7 F+ G" i                        System.out.println("假"+bool);; u# s) t4 {: D5 b+ z% f4 Y5 n
                    }
    ' I; l. j) V# G& p- c8 I# T                if(!bool!=false&&"字符串" instanceof String){
    : U& E" W2 t# e                        System.out.println("真"+bool);
    $ R( m6 ]& @, m3 c- `                }else{
    * ?1 @$ z8 n+ w+ T1 \                        System.out.println("假"+bool);+ F! p' z, L: U2 r8 C
                    }% L) C7 X4 s) R+ y4 b9 M
            }
    ; ], Q- L4 |* [' `; Z7 S$ \$ n
    8 d9 u4 Q& {3 `9 U& Q. R* ?# k3 v1 W; w% m- ?
    运行的结果是:
    8 C5 h0 u  ^$ R. w7 d真true
    - ]2 y4 ?! O* ]2 _1 H2 k1 L2 f假true
    * l$ V5 D/ K) Z9 o: @9 i! X- V. H( z# T; ?& V+ _
    这时有点疑惑,就像提问者所说的没有赋值为true啊* H. S0 c) N/ e( r6 I
    同时站长也把程序写了一下,运行了一下,结果的确如此,疑惑了?
    * H4 t, n' `8 P1 J然后想通过debug方式看看问题出在哪一步,结果更是诧异:; L5 M! j/ W3 w* z+ s! z; F9 O6 W5 [
    真false# J: i8 H2 n. H% M6 N. S& @9 g- r
    真false
    ! t( }" |8 D/ h* w* [; B4 h: N6 Z9 G2 T" e" @1 D" v8 y
    $ V, |# j" U6 O" ?4 d- `& O
    彻底晕了,谁来解释下问题在哪里?
      |/ A8 l7 L6 \" A2 ?9 y( w8 X- ], P' B* v& |
    ; J5 l" z% T: I0 R* v
    , G2 {) f0 E: J6 n

    # R* z. {* S# R
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2021-5-25 00:00
  • 签到天数: 1917 天

    [LV.Master]出神入化

    2062

    主题

    3720

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66592

    宣传达人突出贡献优秀版主荣誉管理论坛元老

     楼主| 发表于 2015-4-23 09:51:15 | 显示全部楼层
    这个问题的结果是没问题的,主要考虑到了运算符的优先级!
    & O3 b) L7 n  V! f自己看下优先级,就什么都明白了
    $ n  @& z) H4 k+ H3 V7 j4 F6 @! G9 B5 q

    4 n* ]! s" a: {  [; @; m* _6 A. k) S" a; y$ d- H
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    81

    帖子

    176

    积分

    普通会员

    Rank: 2

    积分
    176
    发表于 2022-7-8 13:47:03 | 显示全部楼层
    感谢楼主  
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|Archiver|手机版|小黑屋|Java自学网

    GMT+8, 2025-2-23 04:47 , Processed in 0.106028 second(s), 26 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

    快速回复 返回顶部 返回列表