第三章 操作符

原创 2013年12月02日 19:01:39

 3.1 打印语句

System.out.println(“aaa”+ b); +是连接字符串,有将b转换成String类型的过程。

3.4赋值

别名陷阱,在对象赋值是t1=t2;实际上,t1本身的引用被t2的覆盖掉(t1的引用被垃圾回收器回收),在修改t1时,t2也会跟着变化。用t1.a=t2.a,保证t1和t2的独立性。

操作符的操作是一个对象的引用

3.5算数操作符

Random类的使用方法,nextInt(max)函数,随机数为0-max中的最大数,为防止0变为除数,nexInt()+1;一般要加1操作。

Random rand = new Random(48);中48的作用,如果没有48,用默认值系统时间作为种子,在第一次执行时随机数为16,隔几秒执行随机数变化24或者其他。如果指定为48,无论你今天运行还是明天运行,输出结果随机数都是同一个。

3.7关系操作符

对于== 和equals()的不同情况应用

==在比较对象时,比较的是引用,即指向的地址。

要比较两个对象的内容(其中的字段值)是否相等,要用equals()。(不包括基本类型,基本类型用== 和 !=)

但是equals()在类中默认,是比较的引用。equals(Integer a,b)之所以返回比较内容的结果,是Integer类中,重写了equals函数。对于自己定义的类,如Dog之类的,要重写equals()函数才可以。

3.8 逻辑操作符

java中,不能将非布尔值当做布尔值,如i=10,不能直接(!i)

逻辑操作符中短路现象,a&&b&&c,如果b为false,c的逻辑值不需要再计算,如果正确的设计abc的顺序,可以提高计算性能。

3.9 直接常量

long double float 后面要加L,D,F相应的符号,0X为16进制hexadecimal 0打头为8进制。

指数计数法,1.39e-43f 表示 1.39* ,e这里表示10的幂,不是2.718

3.10 按位操作符

& | ~ 异或(^,10或01输出结果为1) &= |=^=

3.11 移位操作符

<< 左移,箭头所指的方向,在低位补0;

>> 有符号右移,符号为正,高位插入0,符号为负,高位插入1;

>>> 无符号右移,无论正负,在高位插入0.

<<=、 >>=、>>>=(对short byte无符号右移会出错)

3.12 三元操作符 if-else

i<10? i*100:i*10 ; 如果i<10成立,执行i*100,否则执行后一个。代码紧凑,但是不好理解。

3.13+操作符重载

int x,y,z;

print(“abc”+x+y+z); 与 print(“abc”+(x+y+z)); 不一样,后者先计算xyz的和,然后输出一个值。

3.14 使用操作符常犯的错误

= 和 ==两者之间的区别

3.15 类型转换操作符

narrowing conversion:如将double转化为int,会伴随信息丢失。

widening conversion:不会造成信息丢失。 int转为float

在narrowing时,信息是截尾的。(int)0.7=0;可以用Math中的round方法四舍五入,round(0.7)=1;

在计算时,默认将类型变大,避免信息丢失。

3.16 java中没有sizeof

sizeof最大的原因是为了移植,java不需要。

Boolean布尔型值,可用的操作比较少,不可加减等。只能赋值true false

char byte short在进行运算(+ - * /)时,数据类型会提升到int,必须强制转换结果才能赋值。char a=(int)(a+b);

 

第三章:操作符

在最底层,Java的数据是通过使用操作符来操作的。 1.更简单的打印语句 在类文件中导入:import static net.mindview.util.Print.* 即可用print()代替sys...
  • zl3Fiveorighting
  • zl3Fiveorighting
  • 2017年11月26日 19:58
  • 51

第三章 操作符

操作符                  第三章 1、使用静态导入类   import static 包名全名.具体类名.* ;可以直接使用这个类中的静态方法2、注意对象别名的问题,当你使用赋值运算符...
  • pengchengjiji
  • pengchengjiji
  • 2010年10月07日 14:47
  • 474

第三章——操作符

这一点大多数高级语言都是相通的,主要强调一些java的不同之处和一些需要强调的地方 1.java没有sizeof 在c和c++中非常常见sizeof,因为要在不同的机器上进行移植,比如32...
  • HaoBigLong
  • HaoBigLong
  • 2015年04月17日 15:41
  • 109

第三章.操作符

导语: 在最底层,Java中的数据是通过使用操作符来操作的。 1.Java操作符的定义 操作符接受一个或多个参数,并生成一个新的值,可能是boolean。+、-、*、/、和赋值号(=)的用法与其他...
  • sinat_32955803
  • sinat_32955803
  • 2016年08月11日 21:29
  • 148

java编程思想第三章总结--操作符

1.操作符:+、-、*、/、%、+=、-= 、>、 2.优先级:一般是先乘除后加减,()的优先级最大 3.String类型后面如果跟了一个+,且+后面是非String类型,这编译器会将+后面的非S...
  • muyeju
  • muyeju
  • 2015年09月23日 22:15
  • 385

2018-1-30第三章 操作符

“你是年少的欢喜,喜欢的少年是你”  ~除号和取余                 -10/-3=3;-10%-3=-1;                 -10/3=-3;-10%3=-1; ...
  • aiLinLgg
  • aiLinLgg
  • 2018年01月31日 10:31
  • 12

java编程思想---第三章(操作符)

1、java操作符;加减乘除,优先规则和我们常用了解的一样,先乘除后加减。在字符串中使用“+” 表示拼接,就是字符串连接。例如 string a= 1+"a"; 2、赋值,=  等号,表示,取最右边...
  • skycanf
  • skycanf
  • 2017年11月27日 16:16
  • 17

【java编程思想笔记】第三章—操作符

char c = 0xffff;//最大字符串 byte b = -0x80;//最小字节型 或byte b = (byte)0x80; 因为0x80形式为正,即第一位不是符号位而是数字位,所以超...
  • elricboa
  • elricboa
  • 2017年11月01日 23:41
  • 54

Think In Java 第三章 操作符

1.编程中注意“别名现象”,因为在向函数中传递对象时,传递的是引用,故可能多个引用同时指向了同一个实际的对象,要注意区分,避免误操作。class Tank{ int level; } pub...
  • qq_33366229
  • qq_33366229
  • 2017年12月27日 18:34
  • 49

第三章:基本概念(操作符)

操作符 定义:操作符能用于操作数据值,包括算术运算符、位操作符、关系操作符和相等操作符。操作符能适用于很多值,例如字符串、数字值、布尔值,甚至对象。在应用于对象时,相应的操作符通常会调用对象的va...
  • miaoch
  • miaoch
  • 2017年03月15日 09:08
  • 306
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:第三章 操作符
举报原因:
原因补充:

(最多只允许输入30个字)