java又一白痴问题。。
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java又一白痴问题。。相关的知识,希望对你有一定的参考价值。
class susu
public static void main(String srgs[])
int x,y=10;
if(((x=0)==0)||((y=20)==20))
System.out.println("现在y的值是:"+y);
int a,b=10;
if(((a=0)==0)|((b=20)==20))
System.out.println("现在b的值是:"+b);
编译出来结果是:现在y的值是:10
现在y的值是: 20
问题是:哪位大虾能帮我解释一下为什么得出这个结果。。越详细越好。
比如这句:
if(((x=0)==0)||((y=20)==20))
谁能帮我把其中的过程讲一次给我听听?谢谢了。!!!!
||和|都是在前后两个判断中有一个是true则结果就为true,否则是false
||和|的区别再于一个在检查前半部分得到true后就直接整体定位为true,不再执行后半部分,另一个即使发现前半部分为true后还是会继续执行一下后半部分。
x=0将x赋值为0.,然后(x=0)==0)判断==前后的两个值是否相等,这里都为1,相等,返回true。不相等返回false。后面的((y=20)==20)一样的。明显这里相等返回true 参考技术A 因为你用的是||
如果你该成 | 试试 结果就是 y=10 b=20了
|| 比较前面后如果成立 后面的不比较了
| 比较前面后不管成立与否 对面的都要比较 参考技术B DK(Java Development Kit )是一切java应用程序的基础,可以说,所有的java应用程序是构建在这个之上的。它是一组API,也可以说是一些java Class。目前已经正式发布的最新版本是JDK1.3。考虑到我对linux不熟悉,而且大多数都是在MS系统下,所以,在这里我用的是win2000。
二、下载,安装
下载地址为JAVA官方站点:java.sun.com,国内也到处都是。
Windows下,直接运行.exe文件,安装到一个目录,我这里用F:\jdk13作为例子。
三、配置
桌面上选择“我的电脑”(右键)
高级
环境变量
在“系统变量”--->“新建”
在变量名中输入:CLASSPATH,变量值中输入:
F:\JDK13\LIB\dt.JAR;F:\JDK13\LIB\TOOLS.JAR;F:\JDK13\BIN;然后确定;
好了,配置完了,要重新启动计算机后,环境变量才能有效的。
四、测试
(1)用文本编辑器写一个简单的java程序:
public class HelloWorld
public static void main(String args[])
System.out.println("Hello World!");
这个例子就是著名的“Hello World”,它的功能就是显示“Hello World”。
注意:该文件名称必须为“HelloWorld.java”,大小写也区分。细心的朋友会注意到就是和public class后的名字一样的。
(2)编译:在dos命令提示符下执行:(注意大小写)
javac HelloWorld.java
如果正常的话,将生成HelloWorld.class文件。
(3)运行:在dos命令提示符下执行:(注意大小写)
java HelloWorld
这里有一个java初学者很有可能遇到的问题(不怕笑话,我也是)就是输入:
java HelloWorld.class
多了后面的.class,一定要注意,否则会出现下面的错误:
Exception in thread "main" java.lang.NoClassDefFoundError:HelloWorld/class
(本人猜想,是不是java翻译“.”的时候换成了“/”,或者是其他的本人不知道的原因)
好了,运行java HelloWorld应该会出现伟大的“Hello World”了。
到这一步,你已经成功配置好了JDK,可以开始漫长而痛苦(对于象我一样的,以前不懂java的朋友来说,可以用“痛苦”来形容,不理解的概念,不熟悉的java api...,不过,不要急,我将和大家一起慢慢入门,慢慢提高... ...)的Java过程了。 参考技术C 其实这个很简单的,只要你记得一个词“短路”
例如,if(((x=0)==0)||((y=20)==20))
或语句只要满足了前面的条件,后面就不会再执行
而如果是与语句,只要前面不满足条件,后面就不会再执行,
这就是所谓的短路。 参考技术D ||是短路或,只要前面一个值是对,则不用判断后面的值的对错。而&&是短路与,只要前面的值是错的,则不用执行后面的判断。|是逻辑或,需要执行两个值都要判断,而&是逻辑与,一样是执行判断两个值的 第5个回答 2011-04-18 if(((x=0)==0)||((y=20)==20)),只执行了前半部分,后半部分的没有执行,所以Y的值还是10。
卧槽!!又一款Java面试神器
临近秋招,又到了“金九银十”面试求职高峰期,在金三银四时也参与过不少面试,2020都说工作不好找,也是对开发人员的要求变高。前段时间自己有整理了一些Java后端开发面试常问的高频考点问题做成一份PDF文档(1000道高频题),同时也整理一些图文解析及笔记,今天在这免费分享给大家,希望大家在即将的十月面试做好复习,长期的积累和短期的突击让自己能找到一个满意的工作!
针对这些的同学,在这分享总结的Java面试的高频面试题(包括了Java集合,JVM,并发与多线程,Spring,MyBaits,微服务,Dubbo,Kakfa,中间件,Redis,数据库,设计模式等),进行了整理,免费分享给大家,希望大家能带着这些问题和答案解析,能让你进行有针对性行的学习,对面试做到知己知彼,百战百胜。
互联网Java 工程师面试题
内容涵盖: Java、 MyBatis、ZooKeeper、Dubbo、Elasticsearch. Memcached、Redis、MySQL、 Spring、 Spring Boot、Spring Cloud、RabbitMQ、 Kafka、Linux等技术栈
MyBatis面试题
ZooKeeper面试题
Dubbo面试题
Redis面试题
MySQL面试题
微服务面试题
Spring面试题
Spring Cloud面试题
RabbitMQ面试题
除了这套pdf文档我还为大家准备了一套体系化的架构师学习资料包以及BAT面试资料,供大家参考及学习,文末有免费领取方式:
以上是关于java又一白痴问题。。的主要内容,如果未能解决你的问题,请参考以下文章