byte, short, char 三种类型在 Java 中是表象(假的),底层都是按照 int 运算的(需要自劢类型转换),如果运算结果超出int范围,则会得到一个错误的结果,所以需要先将其强制类型转换为Long类型再进行运算
运算符
自增(自减)运算符: ++ --就是可以将当前变量自我增加(减少)1 的运算符。
i++, 后++, 先将 i 的值作为整个表达的值, 然后将 i 增加 1。
++i, 先++, 先将 i 增加 1, 然后将 i 的值作为整个表达的值。
i++ ; ======= I +=1 ;====== I = i+1;
int a=2;
int b=a++; System.out.println(a+”,”+b);//3,2 (先表达式b=a,后a=a++)
int b=++a; System.out.println(a+”,”+b);//3,3 (先a=a++,后表达式b=a)
i++%7 先i%7然后在++
逻辑运算:与(并且) && 或(或者) || 非(否则) !
&& 和||被称作短路运算符,"&"和" | "被称作非短路运算符(使用的比较少,逻辑不合理)。
短路运算符和非短路运算符的区别:
短路运算符[条件 1 && 条件 2],如果条件 1 不成立,则条件 2 不执行;
非短路运算符[条件 1 && 条件 2],两个条件都会执行
比较运算: 比较变量的值, 就是逐个"位"比较值: > >= < <= == !=
基本类型变量的值就是基本值(字面量),比如: i=1
引用类型变量的值是对象地址值
条件运算符(3 元运算符、三目运算符) *
条件表达式的语法:[条件表达式 ? 表达式 1 : 表达式 2]
当"条件表达式"为 true 时候, 表达式 1 作为整个表达式的值, 否则表达式 2 作为整个表达式的值
例如:
Int age =68;
Char sex =’男’;
年龄<25或者性别=女的人记100分;年龄>=25或者=男的记90分
Int a = age <25 || sex == ‘女’ ? 100 : 90;
常用在分页业务逻辑:
Int total ;
Int size ;
Int page = total % sieze == 0 ? total / size : total /size + 1 ;
分支流程控制:
if-else 语句
if- else if … –else
例子:
Public void loop(int qty){
If (qty < 1){
System .out .print(“不再往下执行”);
Return ; //跳出方法
}
If (qty >1){
Int a =a++;
}
}
switch-case 语句 (switch(开关),case(条件),break(跳出表达式))
switch (整数表达式) {
case 条件 1: . . . ; break; //跳出语句或循环
case 条件 2: . . . ; break;
.
.
.
Default: . . . ; break;
}
注:在使用 switch 时有如下注意点,
Switch(表达式),只能是整数(int byte char short) 表达式(switch不能处理long或其他类型)
case 条件只能是整数(int byte char short) 常量, 丌能是变量及表达式
case 条件的内容可以为空(如上 case 10),如果为空,则继续执行乊下代码
default 表示如果没有满足 case 的条件的其它一切情况
注意别忘记写 break,会出现"穿透" (一直执行接下来的代码,直到遇到 break 戒本代码块执行结束)
例子:根据分数判断优良中差
Public String getLevel (int score) {
String level;
Switch (score /10){
Case 10: //满分也是优秀
Case 9 : level =”优秀”; break;
Case 8 : level =”良好”; break;
Case 7 : level =”中等”; break;
Case 6 : level =”及格”; break;
default : level =”不及格”;
}
System .out .print(level);
Return level;
}
循环控制
循环控制有 while 循环、do- while 循环、for 循环和 JDK5.0 新特性 for- each 循环
While (boolean 表达式){ 条件不成立一次也不执行
//循环体
}
例子:
While (true) {
Int I ; //while循环中声明的变量在while外不能用
System .out .print(“level”);
If (I >5) {
Break ; //打断循环 (不添加条件的话会成死循环)
}
}
for 循环在开发过程中使用的频率比较高,通常用于指定次数的循环
for (初始化表达式;boolean 表达式;递增表达式)
//循环体
}
do-while 循环首先执行的是循环体,执行完毕后才判断boolean 表达式是否为 true,为 true 继续,false 退出
do { 条件不成立只执行一次
//循环体
} while (boolean 表达式);
方法的递归调用
f(n)= f(n -2)+n 这种函数调用函数本身的形式被称为递归调用
public int f (int n) {
if (n==1) return;
int y = f (n-2) + n; //调用本身
return y;
}
相关推荐
alipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk-java-allalipay-sdk...
mysql57驱动jar包mysql-connector-java-5.1.49 mysql57驱动jar包mysql-connector-java-5.1.49 mysql57驱动jar包mysql-connector-java-5.1.49 mysql57驱动jar包mysql-connector-java-5.1.49 mysql57驱动jar包mysql-...
mysql-connector-java-5.1.31.rarmysql-connector-java-5.1.31.rarmysql-connector-java-5.1.31.rarmysql-connector-java-5.1.31.rarmysql-connector-java-5.1.31.rarmysql-connector-java-5.1.31.rarmysql-...
mysql-connector-java-8.0.27 jar包 mysql-connector-java-8.0.27 jar包 mysql-connector-java-8.0.27 jar包 mysql-connector-java-8.0.27 jar包 mysql-connector-java-8.0.27 jar包 mysql-connector-java-8.0.27 ...
赠送jar包:weixin-java-miniapp-2.8.0.jar; 赠送原API文档:weixin-java-miniapp-2.8.0-javadoc.jar; 赠送源代码:weixin-java-miniapp-2.8.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-miniapp-2.8.0....
赠送jar包:weixin-java-miniapp-3.5.0.jar; 赠送原API文档:weixin-java-miniapp-3.5.0-javadoc.jar; 赠送源代码:weixin-java-miniapp-3.5.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-miniapp-3.5.0....
赠送jar包:weixin-java-mp-2.8.0.jar; 赠送原API文档:weixin-java-mp-2.8.0-javadoc.jar; 赠送源代码:weixin-java-mp-2.8.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-mp-2.8.0.pom; 包含翻译后的API...
JavaEE源代码 mysql-connector-java-5.0.8-binJavaEE源代码 mysql-connector-java-5.0.8-binJavaEE源代码 mysql-connector-java-5.0.8-binJavaEE源代码 mysql-connector-java-5.0.8-binJavaEE源代码 mysql-connector...
赠送jar包:aliyun-java-sdk-dysmsapi-1.1.0.jar; 赠送原API文档:aliyun-java-sdk-dysmsapi-1.1.0-javadoc.jar; 赠送源代码:aliyun-java-sdk-dysmsapi-1.1.0-sources.jar; 赠送Maven依赖信息文件:aliyun-java-...
赠送jar包:weixin-java-miniapp-2.8.0.jar; 赠送原API文档:weixin-java-miniapp-2.8.0-javadoc.jar; 赠送源代码:weixin-java-miniapp-2.8.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-miniapp-2.8.0....
eclipse-java-neon-3-win32-x86_64.zipeclipse-java-neon-3-win32-x86_64.zipeclipse-java-neon-3-win32-x86_64.zipeclipse-java-neon-3-win32-x86_64.zipeclipse-java-neon-3-win32-x86_64.zipeclipse-java-neon-3-...
赠送jar包:aliyun-java-sdk-core-4.5.30.jar 赠送原API文档:aliyun-java-sdk-core-4.5.30-javadoc.jar 赠送源代码:aliyun-java-sdk-core-4.5.30-sources.jar 包含翻译后的API文档:aliyun-java-sdk-core-4.5....
tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-redis-session-manager-1.2-tomcat-7-java-7tomcat-...
安装包:java-7-openjdk-amd64.tar.gz 使用方法 1. 拷贝至服务器/个人电脑...OpenJDK Runtime Environment (IcedTea 2.6.8) (7u121-2.6.8-1ubuntu0.12.04.3) OpenJDK 64-Bit Server VM (build 24.121-b00, mixed mode)
赠送jar包:aws-java-sdk-core-1.11.939.jar 赠送原API文档:aws-java-sdk-core-1.11.939-javadoc.jar 赠送源代码:aws-java-sdk-core-1.11.939-sources.jar 包含翻译后的API文档:aws-java-sdk-core-1.11.939-...
赠送jar包:aliyun-java-sdk-core-4.3.9.jar; 赠送原API文档:aliyun-java-sdk-core-4.3.9-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.3.9-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
赠送jar包:weixin-java-common-3.5.0.jar; 赠送原API文档:weixin-java-common-3.5.0-javadoc.jar; 赠送源代码:weixin-java-common-3.5.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-common-3.5.0.pom;...
赠送jar包:aliyun-java-sdk-kms-2.11.0.jar; 赠送原API文档:aliyun-java-sdk-kms-2.11.0-javadoc.jar; 赠送源代码:aliyun-java-sdk-kms-2.11.0-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-kms-...
赠送jar包:aliyun-java-sdk-kms-2.11.0.jar; 赠送原API文档:aliyun-java-sdk-kms-2.11.0-javadoc.jar; 赠送源代码:aliyun-java-sdk-kms-2.11.0-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-kms-...
赠送jar包:flink-table-api-java-bridge_2.11-1.12.7.jar; 赠送原API文档:flink-table-api-java-bridge_2.11-1.12.7-javadoc.jar; 赠送源代码:flink-table-api-java-bridge_2.11-1.12.7-sources.jar; 赠送...