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;
}
相关推荐
aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-java-sdk-4.15.1aip-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....
赠送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包: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-...
赠送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包:weixin-java-pay-2.8.0.jar; 赠送原API文档:weixin-java-pay-2.8.0-javadoc.jar; 赠送源代码:weixin-java-pay-2.8.0-sources.jar; 赠送Maven依赖信息文件:weixin-java-pay-2.8.0.pom; 包含翻译后...
赠送jar包:aliyun-java-sdk-core-4.5.10.jar; 赠送原API文档:aliyun-java-sdk-core-4.5.10-javadoc.jar; 赠送源代码:aliyun-java-sdk-core-4.5.10-sources.jar; 赠送Maven依赖信息文件:aliyun-java-sdk-core-...
本文将深入探讨这两个文件:"mysql-connector-java-5.1.40.zip" 和 "mysql-connector-java-5.1.10.jar",以及它们在Java开发中的作用。 首先,`mysql-connector-java-5.1.40.zip` 是一个压缩文件,包含了MySQL ...
赠送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...
mysql-connector-java-5.0.5.jar mysql-connector-java-5.1.6.jar mysql-connector-java-5.1.18.jar mysql-connector-java-5.1.21.jar mysql-connector-java-5.1.35.jar mysql-connector-java-5.1.39.jar mysql-...
aliyun-java-sdk-dysmsapi-1.1.0.jar 最新下载的 阿里云短信服务器所需jar包之一,core包可以在maven找到不再上传 <!-- https://mvnrepository.com/artifact/com.aliyun/aliyun-java-sdk-dysmsapi --> ...
weixin-java-mp-demo-springboot, 微信公众号demo,使用weixin-java-tools,基于Spring Boot
赠送jar包:flink-table-api-java-bridge_2.12-1.14.3.jar 赠送原API文档:flink-table-api-java-bridge_2.12-1.14.3-javadoc.jar 赠送源代码:flink-table-api-java-bridge_2.12-1.14.3-sources.jar 包含翻译后...
mariadb-java-client-2.4.0.jar和mysql-connector-java-8.0.11.jar驱动 驱动信息。mm-mysql-2.0.13-bin.jar 这些jar包都可以驱动
赠送jar包:mysql-binlog-connector-java-0.21.0.jar; 赠送原API文档:mysql-binlog-connector-java-0.21.0-javadoc.jar; 赠送源代码:mysql-binlog-connector-java-0.21.0-sources.jar; 赠送Maven依赖信息文件:...
钉钉集成旧版,包含taobao-sdk-java-auto_1479188381469-20220428.jar、taobao-sdk-java-auto_1479188381469-20220428-source.jar
最新官方淘宝服务端SDK,5月18日更新,包含taobao-sdk-java.jar和taobao-sdk-java-source.jar两个文件,供大家下载研究。 maven安装命令:mvn install:install-file -Dfile=路径\xxx.jar -DgroupId=dingtalk-sdk-...
这个"mysql-connector-java-8.0.23.zip"文件正是MySQL Connector/J的一个版本,它针对的是MySQL数据库的8.0.23版本。 MySQL数据库系统基于ACID(原子性、一致性、隔离性和持久性)事务模型,提供高可用性和高性能。...