JAVA核心技术学习之二
2022/1/9 11:05:03
本文主要是介绍JAVA核心技术学习之二,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、变量
在java中,每一个变量属于一种类型。在声明变量时,变量所属的类型位于前面,随后是变量名。变量名必须是一个以字母开头的字母或数字序列,变量中所有的字符都是有意义的,并且大小写敏感。对变量名的长度没有限制。
1.初始化变量
声明一个变量后必须利用赋值语句对变量进行显式初始化才可以使用。在java中不区分变量的声明与定义。
2.常量
在java中,利用final声明常量。关键字final表示这个常量只能被赋值一次。一旦被赋值之后就不能再修改了。在java中经常希望某个常量可以在一个类中的多个方法中使用,通常将这些常量称为类常量。可以使用关键字static final设置一个类常量。
二、运算符
在java中,使用算数运算符 +,-,*,/ 表示加,减,乘,除运算。当参与 / 运算的两个操作数都是整数时,表示整数除法;否则,表示浮点除法。整数被0除会产生一个异常,浮点数被0除将会得到无穷大或者NaN。
1.自增运算符和自减运算符
在java中,借鉴了C和C++的实现方式,也使用了自增、自减运算符;n ++将变量n的值当前值+1,n --将n的值减一。
2.关系运算符和boolean运算符
java具有各种关系运算符。其中,使用两个等号==检测是否相等。另外,经常使用的运算符还有<(小于),>(大于),<=(小于等于)和>=(大于等于)。java延用了C++的习惯,用&&表示逻辑“与”,用 || 表示逻辑“或”。最后java支持三元操作,条件 ? 表达式1 ; 表达式2,如果条件为真,执行表达式1,否则执行表达式2,
3.位运算符
在处理整型数值时,可以直接对组成整型数值的各个位进行操作。这意味着可以使用屏蔽技术获得整数中的各个位。位运算符包括:&(“与”),|(“或”),^(“异或”),~(“非”)。还有 “<<” 和 “>>” 运算符,它们将二进制左移或右移。当需要构建位模式屏蔽某些位时,使用这两个运算符十分方便。最后“>>>”运算符将用“0”填充前面的位,“>>”运算符用符号位填充左侧的位。没有“<<<”运算符。
4.数学函数与常量
在Math类里,包含了各种各样的数学函数。在编写不同类别的程序时,可能需要的函数也不同。
Math的sqrt方法可以帮助计算数值平方根:
double x = 4;
double y = Math.sqrt(x);
System.out.println(y);//y = 2.0
Math的pow方法可以帮助进行幂运算:
double y = Math.pow(x,a);
将y的值设置成x的a次方,pow方法有两个double参数,其返回类型也是double类型
Math类提供一些基本三角函数:
Math.sin
Math.cos
Math.tan
Math.atan
Math.atan2
还有指数函数和他的反函数——自然对数:
Math.exp
Math.log
最后,java还提供了两个·用于表示π和e常量的近似值
Math.PI
Math.E
5.数值类型之间的转换
在程序运行时,经常需要将一种数值类型转换成另外一种数值类型。数值类型之间的合法转换如下图所示:
上图中6个实箭头表示无数据丢失的转换,三个虚箭头表示可能有精度损失的转换。
6.强制类型转换
在java中允许进行强制类型转换。强制类型转换的语法格式是在圆括号中给出想要转换的目标类型,随后紧跟需要转换的变量名。
例如:
double x = 9.997;
int nx = (int)x;
这样,变量nx的值为9。强制类型转换将通过截断小数部分来把一个浮点值转换为整型。如果想进行四舍五入的话可以使用Math.round方法。
7.括号与运算符级别
下图给出了运算符优先级。如果不使用括号,就按照运算符优先级顺序进行计算。同一级别的运算符按照从左到右进行计算。
8.枚举类型
在java中可以自定义枚举类型,枚举类型包括有限个命名的值。
例如:
enum Size{S,M,X,L};
现在,可以声明这样一种类型的变量
Size s = Size.M;
Size类型的变量只能储存该类型声明中给定的某个枚举值,或者null值。
这篇关于JAVA核心技术学习之二的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-26Mybatis官方生成器资料详解与应用教程
- 2024-11-26Mybatis一级缓存资料详解与实战教程
- 2024-11-26Mybatis一级缓存资料详解:新手快速入门
- 2024-11-26SpringBoot3+JDK17搭建后端资料详尽教程
- 2024-11-26Springboot单体架构搭建资料:新手入门教程
- 2024-11-26Springboot单体架构搭建资料详解与实战教程
- 2024-11-26Springboot框架资料:新手入门教程
- 2024-11-26Springboot企业级开发资料入门教程
- 2024-11-26SpringBoot企业级开发资料详解与实战教程
- 2024-11-26Springboot微服务资料:新手入门全攻略