《疯狂Java讲义》 3-数据类型与运算符
Posted iamwlx
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了《疯狂Java讲义》 3-数据类型与运算符相关的知识,希望对你有一定的参考价值。
总结
Java是强类型语言:变量想声明后使用,类型要匹配。
1、注释
Java的单行注释与多行注释与C++类似,// /* */
Java还提供了文档注释,使用javadoc工具可以直接将注释提取为API文档。(好多好多好多类,指导如何使用)
- javadoc只处理在类最前部的注释,默认只处理public、protected修饰的类。
- javadoc -private
- 文档注释以/**开始,以*/结束
- javadoc的参数
*Test.java 所有以Test结尾的程序
javadoc默认不提取@author,@version,如要则加-author等参数
包?首行的 package yeeku; 对包的注释。
包注释并非在java源文件中,需另外指定。标准的html文件,文件名为package.html
2、标识符与关键字
分隔符与C#.net类似。命名的标识符还可以用$作为开头。
Java所有关键字都是小写的。
3、数据类型
变量相当于一个有名称的容器(内存),用于装各种不同类型的数据。
- 基本类型:boolean型,数值型。char相当于无符号整数类型。
- 引用类型:类,接口,数组(String),null。实际相当于指针
注意:要想将大数(超出int范围)当作long来处理,必须在数字后加L标注。因Java自动当作int来处理。
0b开头:二进制;0开头:8进制;0x开头:16进制;之后字符倒是不区分大小写。
总之,如果用二进制表示,最高位是符号位!对long来说也是。默认右边都是32位,溢出?
uxxxx:Unicode值
char类型可以当做字符对应的编码参与运算。16位。可以用String类来表示字符串,双括号。
Java的浮点数采用科学计数法(符号位+指数+尾数),用精确可用BigDecimal类
Java默认是double,float要用F在末尾标记。
除0.0得三个特殊的浮点数:double类的POSITIVE_INFINITY,NEGATIVE_INFINITY,NAN(与任何数不相等,甚至NAN)
可以在数值中使用下划线分隔来数位数。
Java的布尔型只能true,false,不能0或非0(所以不能通过数值转换得到)
+可作为字符串连接符,且从左到右执行。3+4+“”
强制类型转换的数值变化应当注意一下。
生成随机字符串->生成多个特定范围内的数字,再转换
float a=5.6 是错的。5.6默认是double型,得接F或(float)
基本类型对应的包装类。int的Integer有parseInt方法可以直接转换字符串
表达式类型保持与表达式中最高等级操作数相同的类型。23/3=7,这点和C++一样诶
这里主要字符串和数值的加法,与字符(自动提升为int)与int数值的加法的区别。从左至右,注意书上的例子。
常量池:编译器被确定,保存在.class 中的数据。故同样的字符串可以用==判断,只有一个该常量,全都是它的引用。
运算符一些要注意的:3/2 3.2%2.1 a++ ++a Math.pow(3,2) Math.random Math.sin
Java支持连续赋值,表达式值等于右边的值。
注意复数的取反~,对计算机底层的二进制码进行操作,复数是补码。
>>(填充符号位) >>>(补0) 位移不超限的话,可以用来作为*2 /2
可以用+=等 可防止右端表达式类型不同。底层运行机制不同
> >=只支持数值类型(char也ok吧),==可用于同一对象的引用,以及false==true返回false,具体可见P95
&&和&的区别,&不短路,&前是0了仍计算后面的,4<5 & a++>10 ||与|类似
是否? 1:2 这个在Java里也有。可多重嵌套
问题
1、文档注释?
描述部分+标记部分。这篇文章比较详细:https://blog.csdn.net/garfielder007/article/details/54959587
2、包级别的注释?
和python的包有何异同?
3、数字的计算机表示方法:原码,反码,补码。
以上是关于《疯狂Java讲义》 3-数据类型与运算符的主要内容,如果未能解决你的问题,请参考以下文章