`
凌紫冥
  • 浏览: 25497 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

Java编程思想第四版——第八天

    博客分类:
  • Java
 
阅读更多
2012-03-29
76-80/913

3.6 自动递增和递减
递减:--,意为,减少一个单位。
递增:++,意为,增加一个单位。++a等价于a=a+1
递增和递减操作符不仅改变了变量,并且以变量的值作为生成的结果。
各有两种使用方式:前缀式、后缀式
前缀递增:++i、前缀递减:--i,先执行运算,再生成值。
后缀递增:i++、后缀递减:i—,先生成值,再执行运算。
除那些涉及赋值的操作符以外,唯一具有“副作用”的操作符。它们会改变操作数,而不仅仅是使用自己的值。

“java=C++--”,意味着java去除了C++中一些很困难而又没必要的东西,称为了一种更精简的语言。更精简,并不是说java在其他方面也比C++容易很多。

3.7 关系操作符
关系操作符生成的是一个boolean结果,它们计算的是操作数的值之间的关系。关系是真实的,表达式生成true,关系不真实,生成false。
关系操作符:<、>、<=、>=、==、!=
==、!=适用于所有的基本数据类型,其他比较符不适用于boolean类型,因为boolean值只能为true或false,“大于”和“小于”没有实际意义。

3.7.1 测试对象的等价性
==、!=也适用于所有对象,比较的是对象的引用。对象的内容相同,对象的引用不同,结果是不相等的。
比较两个对象的实际内容是否相等,必须使用所有对象都适用的特殊方法equals(),这个方法不适用于“基本类型”,基本类型直接使用==、!=。

创建自己的类:
class Value{
int i;
}

public class EqualsMethod{
public static void main(String [] args){
Value v1 = new Value();
Value v2 = new Value();
V1.i = v2.i = 100;
System.out.println(v1.equals(v2));
}
}/* Output:
false
*///:~
打印结果是false,这是由于equals的默认行为是比较引用,所以除非在自己的新类中覆盖equals()方法,否则不可能表现出我们希望的行为。
大多数java类库都实现了equals()方法,以便用来比较对象的内容,而非比较对象的引用。

3.8 逻辑操作符
逻辑操作符:与(&&)、或(||)、非(!)
与(&&)、或(||)、非(!)操作只可应用于布尔值。
与C及C++不同的是:不可将一个非布尔值当作布尔值在逻辑表达式中使用。例如:i&&j、i||j、!i。
“//!”这种注释语法使得注释能够被自动移除以方便测试。
在应该使用String值得地方使用了布尔值,布尔值会自动转换成适当的文本形式。
浮点数的比较是非常严格的,即使一个数仅在小数不忍与另一个数存在极微小的差异,仍然认为它们是不相等的,即使一个数只比零大一点点,它仍然是非零值。

3.8.1 短路
使用逻辑操作符时,会遇到一种短路现象。即一旦能够明确无误的确定整个表达式的值,就不再计算表达式余下部分了。因此,整个逻辑表达式靠后的部分有可能不会被运算。

如果所有的逻辑表达式都有一部分不必计算,将获得潜在的性能提升。

每题的练习都完成了。

这样真的好慢,后期不知道能不能速度快点,不过速度慢点也没关系,重要的是基础要打牢了,细节、思想都要随着时间也慢慢侵蚀自己的思维。
分享到:
评论

相关推荐

    java 编程思想 英文版 第四版(非扫描pdf)

    《Thinking in Java》是Bruce Eckel创作的一部Java编程经典著作,英文版的第四版更是深受全球程序员喜爱的参考资料。这本书全面深入地介绍了Java语言,不仅适合初学者,也对有经验的程序员提供了宝贵的洞见。它以...

    java变成思想第四版中文版 练习题答案

    《Java编程思想》是 Bruce Eckel 的经典著作,第四版更是深受广大Java程序员喜爱。这本书深入浅出地讲解了Java语言的核心概念和技术,包括面向对象编程、类与对象、继承与多态、接口、异常处理、集合框架、泛型、...

    Java编程思想全面的答案

    第四版在原有的基础上进行了更新,加入了更多现代Java特性,如泛型、枚举、集合框架等。 1. **面向对象编程**:Java是一种纯面向对象的语言,理解类、对象、接口以及它们之间的关系至关重要。类是对象的蓝图,通过...

    thinking in java第三版简体中文

    ### Java编程思想第三版核心知识点解析 #### 一、引言 《Java编程思想》作为一本备受推崇的经典著作,自问世以来便深受广大Java开发者喜爱。本书由Bruce Eckel撰写,以其独特的视角和深入浅出的讲解方式,帮助无数...

    Thinking in Java -- 4th Edition

    ### 《用Java思考》第四版 —— Bruce Eckel 著 #### 书籍概述 本书为《用Java思考》的第四版,作者是Bruce Eckel,MindView公司的总裁。这本书自出版以来就受到了广大Java程序员的高度评价。本书并非扫描版本,...

    Thinking in java第4版练习题答案

    第四版作为最新的版本,涵盖了从基础语法到高级特性的全面内容,旨在帮助读者理解并掌握Java编程的精髓。这本书的练习题是检验学习成果、提升编程技能的重要途径。以下是对这些练习题答案的一些关键知识点的解析: ...

    数据结构与算法分析_java语言描述课后答案(英文)

    - **第四章:树** —— 深入讨论了树的各种类型(如二叉树、平衡树等)及其操作,如遍历、插入和删除。 - **第五章:散列** —— 介绍了散列表的工作原理、散列函数的设计以及处理冲突的方法。 - **第六章:优先队列...

    thinking in JAVA

    ### 《Thinking in Java》——Java编程思想精粹 #### 一、书籍简介与评价 《Thinking in Java》是Java编程领域中的一本经典之作,由资深程序员Bruce Eckel撰写,自出版以来就受到了广大读者的高度评价。本书被誉为...

    java面向对象程序设计 课本源码(全)

    Java面向对象程序设计是计算机科学中的一个重要领域,它基于面向对象编程思想,使得代码更加模块化、可维护和可重用。张亦辉版的教材是许多初学者和专业人士学习这一主题的参考资料。该压缩包包含了该教材1-10章的...

    电子书《面向对象程序设计与Java语言》(第0.1版)

    - **子程序(方法)**:第四章解释了如何定义和使用子程序,以及它们在程序设计中的作用。 - **复合数据类型**:第六章详细阐述了数组、列表等复合数据类型的使用。 2. **面向对象程序设计的基本思想**: - **类...

    java实习周记篇编程资料

    通过以上五个星期的学习与实践,不仅掌握了Java编程的基础知识,还深入了解了面向对象编程的思想与高级特性,并通过实际项目加深了对技术的理解与运用能力。这样的实习经历对于成为一名合格的Java开发者至关重要。

    《Java面向对象程序设计(第2版)》例子源代码

    《Java面向对象程序设计(第2版)》是一本深入探讨Java编程的教材,尤其注重面向对象编程思想的讲解。本书通过丰富的实例代码,帮助读者理解并掌握Java语言的核心概念和面向对象编程的关键要素。在提供的压缩包文件...

    java基础教程

    - **1996年1月:** 第一个Java开发工具包(JDK)——JDK 1.0发布,开启了Java编程的新纪元。 - **1996年4月:** 主要的操作系统供应商宣布支持Java技术,增强了Java的影响力。 - **1997年2月18日:** JDK 1.1发布,...

    JAVA语言程序设计-第六章 面向对象的程序设计概念

    在Java编程中,面向对象的程序设计(Object-Oriented Programming,简称OOP)是核心概念之一。这一章通常会深入讲解OOP的四大基本特征:封装、继承、多态和抽象。封装是将数据和操作数据的方法绑定在一起,形成一个...

    数据结构与算法分析(Java版)

    《数据结构与算法分析(Java版)》是一本由Robert Lafore撰写的书籍,旨在通过Java编程语言来介绍实用的数据结构与算法知识。本书适用于已经具备一定编程基础(如Java或C++)的学习者,通过轻松易懂的方式讲解了如何...

Global site tag (gtag.js) - Google Analytics