java自学网VIP

Java自学网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 4290|回复: 2

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

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

    [LV.Master]出神入化

    2039

    主题

    3697

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66471

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

    发表于 2015-4-22 21:40:16 | 显示全部楼层 |阅读模式
    今天在java自学网群中有人提出了一个关于java程序的运行结果的疑惑,大家快过来帮忙解答下:
    7 U' \& ?# E; qpublic static void main(String[] args) throws UnsupportedEncodingException {, t$ _% j! M. M9 i- G* {. }8 t4 G6 C
                    boolean bool=false;
    0 H" X, ]1 E. [6 B9 {+ X/ L' ^                if(bool=false||bool==false){
    2 P8 `6 r# {6 q                        System.out.println("真"+bool);: Q  _( G7 e- `8 o1 @) K" z
                    }else{) q! _3 S8 E7 a( J) q
                            System.out.println("假"+bool);# x1 t1 B8 l: S$ N7 O1 A# F
                    }2 O0 A  O2 J$ v; s1 I
                    if(!bool!=false&&"字符串" instanceof String){$ g7 k1 d1 k2 {; a0 p; P
                            System.out.println("真"+bool);
    " s3 h, s# B5 z                }else{+ ^0 E/ g5 J/ _  h
                            System.out.println("假"+bool);- H. ~3 Z" e. v6 M
                    }3 {4 _( L: H* H7 Y/ g/ \7 Y
            }
    $ d' D3 ?7 d4 y+ ^7 D7 B$ c, A- R5 r7 o4 H3 ?0 S3 R
    " G. n/ _/ ~+ y* c9 {! s
    运行的结果是:
    : S9 |2 [! A" A0 _& u& Q1 \' ?# i真true
    + ^  w$ ^* ^; T假true
    9 Z. g# x' r4 G; d  Y" r7 Y- e* v# A, E1 k1 J
    这时有点疑惑,就像提问者所说的没有赋值为true啊: ?3 o, J' W  R% i$ m2 C
    同时站长也把程序写了一下,运行了一下,结果的确如此,疑惑了?6 G, K4 L+ c" z; N" i. n3 U; R. q
    然后想通过debug方式看看问题出在哪一步,结果更是诧异:3 F# M. h1 c+ i! Y- A% L
    真false9 J: H0 @' a! ~9 q# g
    真false/ j7 M( P6 B4 S+ e8 C
    1 s& t2 r2 L3 r& l- F, }) s- N
    + I: M8 g. \) m0 ?
    彻底晕了,谁来解释下问题在哪里?  @: {  z- w/ l
    5 v/ p, F1 u# K9 G0 E
    ) c  n! y: l; U

    + ]/ f% I& a  K$ i4 }/ P; M  j
    - g' \' \0 u! n9 t1 e
    回复

    使用道具 举报

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

    [LV.Master]出神入化

    2039

    主题

    3697

    帖子

    6万

    积分

    管理员

    Rank: 9Rank: 9Rank: 9

    积分
    66471

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

     楼主| 发表于 2015-4-23 09:51:15 | 显示全部楼层
    这个问题的结果是没问题的,主要考虑到了运算符的优先级!1 v0 T9 y- W% ?2 [5 C- Z* ^# [
    自己看下优先级,就什么都明白了/ i( u- O3 c* u3 d
    " C9 R( L4 e# R# D
    0 A; b8 L6 Q4 }* z6 \% x- w8 i
    5 e) p) v  d$ h3 {* ^
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    0

    主题

    81

    帖子

    176

    积分

    普通会员

    Rank: 2

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

    使用道具 举报

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

    本版积分规则

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

    GMT+8, 2025-1-22 12:32 , Processed in 0.126143 second(s), 30 queries .

    Powered by Javazx

    Copyright © 2012-2022, Javazx Cloud.

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