type
status
date
slug
tags
summary
category
password
icon
Java不仅仅是早晨提神的咖啡,它还是一种能让你的创意无限放大的编程语言!在这篇基本教程中,我们不会让你单调地敲代码,而是要一起探索Java的奥秘,从运算符到循环,每一步都充满了发现的喜悦。无论你是初次涉足编程的新手,还是想要回顾基础的资深开发者,这里都有你期待的惊喜。让我们一起把这些看似普通的代码行,变成能够解决实际问题、创造有趣项目的强大工具吧!
运算符和表达式
运算符是对字面量或者变量进行操作的符号。
表达式是用运算符把字面量或变量连接起来, 符合java语法的式子. 不同运算符链接的表达式体现的是不同类型的表达式.
例如在以下代码中,
+
是运算符, 并且是算数运算符; a+b
是表达式, 并且+
是算术表达式; 所以这表表达式叫算术表达式.在IDEA中, 输入
psvm
可以自动填充public static void main(String[] args) {}
.输入
sout
可以自动填充System.
out
.println()
;
.算数运算符
符号 | 作用 |
+ | 加 |
- | 减 |
* | 乘 |
/ | 除 |
% | 取模, 取余 |
注意: 如果有小数参与计算, 结果有可能不精确.
小练习: 数据拆分
题目: 键盘录入三个数, 将其拆分为个位, 十位, 百位并输出
公式:
需求 | 方法 |
输出个位 | 数值 % 10 |
输出十位 | 数值 / 10 %10 |
输出百位 | 数值 / 100 %10 |
完整代码:
输出结果:

隐式转换与强制转换
数字相加
数字进行运算时, 数据类型不一样不能运算, 需要转成一样的, 才能运算.
隐式转换
隐式转换(自动类型提升)是把取值范围小的数字转成取值范围大的数字.
范例:
取值范围从小到大:
byte < short < int < long < float < double
提升规则:
取值范围小的和取值范围大的进行运算时, 小的会先提升成大的, 再进行运算.
byte
, short
, char
在运算的时候会提升为int
再进行运算.强制转换
强制转换是把取值范围大的数字转成取值范围小的数字.
格式: 目标数据类型 变量名 = (目标数据类型) 被强转的数据
范例:
字符串相加
当”+”操作出现字符串时, 这个”+”是字符串连接符, 不是算数运算符. 会将前后的数据进行拼接, 并产生一个新的字符串.
连续进行”+”操作时, 按从左到右依次执行.
字符相加
当
字符+字符
或字符+数字
是, 会把字符通过ASCII码表查询的数字进行计算.

自增自减运算符
符号 | 作用 | 说明 |
加 | 变量的值+1 | |
减 | 变量的值-1 |
和均可放到变量的前边, 也可放到变量的后边.
赋值运算符
符号 | 作用 | 说明 |
= | 赋值 | int a = 10 , 将10赋值给变量a |
+= | 加后赋值 | a += b , 将a + b的值赋值给a |
-= | 减后赋值 | a -= b , 将a - b的值赋值给a |
*= | 乘后赋值 | a *= b , 将a * b的值赋值给a |
/= | 除后赋值 | a /= b , 将a / b的值赋值给a |
%= | 取余后赋值 | a %= b , 将a / b的余数赋值给a |
关系运算符
符号 | 说明 |
判断a和b的值是否相等, 成立为 true , 不成立为false | |
判断a和b是否不相等, 成立为 true , 不成立为false | |
判断a是否大于b, 成立为 true , 不成立为false | |
判断a是否大于等于b, 成立为 true , 不成立为false | |
判断a是否小于b, 成立为 true , 不成立为false | |
判断a是否小于等于b, 成立为 true , 不成立为false |
完整代码:
输出结果:

逻辑运算符
符号 | 作用 | 说明 |
& | 逻辑与(且) | 并且, 两边都为真, 结果才为真 |
| | 逻辑或 | 或者, 两边都为假, 结果才为假 |
^ | 逻辑异或 | 相同为 false , 不同为true |
! | 逻辑非 | 取反 |
短路逻辑运算符
符号 | 作用 | 说明 |
&& | 短路与 | 结果和&一样, 但是又短路效果 |
|| | 短路或 | 结果和|一样, 但是又短路效果 |
完整代码:
输出结果:

就常用的逻辑运算符: &&, ||, !
三元运算符
格式:
关系表达式? 表达式1 : 表达式2;
范例: 求两个数的较大值
计算规则:
- 首先计算表达式的值
- 如值为
true
, 则表达式1的值就是结果
- 如值为
false
, 则表达式2的值就是结果
运算符优先级: 小括号优先所有
分支结构——if语句
格式1
范例:
格式2
范例:
格式3
范例:
分支语句——switch语句
范例:
default的位置和省略
default
不一定要写在最后, 只是习惯上这么写.
default
可以省略, 语法不会报错, 但是不建议
case穿透
- 语句体没写
break
导致的
- 当一个
case
分支在执行完毕后没有遇到break
语句而直接继续执行下一个case
分支的代码的现象。这意味着,即使下一个case
的条件并未满足,其代码也会被执行.
- 使用场景: 如果多个
case
语句体重复了, 可以尝试使用case穿透来简化代码.
Switch新特性
该特性只在JDK12后的版本可用
注: 如果大括号里只有一行代码, 那么可以将其省略.
if和switch的使用场景
- if的第三种格式: 一般用于对范围的判断
- switch: 把有限个数据一一列举出来, 让我们任选其一.
循环结构——for
范例: 打印10次HelloWorld
运行结果:

虽然图里显示打印到了9, 但是别忘了开头是0.
- 初始化语句只会执行一次
- 判断语句为
true
, 循环继续
- 判断语句为
false
, 循环结束
小项目: 计算1-5的总和
完整代码:
运行结果:

循环结构——While
示例: 打印1-100
什么时候用for? 什么时候用while?
- for循环中, 控制循环的变量, 因为归属在for循环中, 所以循环结束后就不能再被访问了.并且知道循环次数或者循环范围.
- while循环中, 控制循环的变量不在while语句体内, 所以结束后还可以被访问.并且不知道循环次数或者循环范围, 只知道结束条件
循环结构————do while
练习: ✨输出折纸次数————斯坦福大学Java练习题
题目: 世界最高山峰珠穆朗玛峰(8844.43m≈8844430mm), 现在有一张足够大的纸, 它的厚度是0.1mm, 请问需要折多少次, 才能达到珠穆朗玛峰的高度?
分析及回答:
- 每一次纸张折叠的厚度是原来的二倍.
- 由于不知道循环次数或循环范围, 所以用for循环不合适; 有知道结束条件, 所以只利用while循环比较合适.
综上, 完整代码应该是这样的:
输出结果:

练习: ✨回文数————力扣算法真题
题目: 给你一个整数X, 判断它是不是回文数, 若是输出true, 若不是输出false.(回文数是指正序和倒序读都是一样的数)例如:121是回文, 123则不是.
分析及回答
核心思路: 将数字倒过来和原来的数字进行比对, 如果一样输出True. 不一样就输出False.
完整代码:
运行结果:

🤗 总结归纳
Java基本教程涵盖了运算符、判断、循环等基础知识。文章详细解释了算术运算符、隐式转换与强制转换、字符串相加、字符相加、自增自减运算符、赋值运算符、关系运算符、逻辑运算符、短路逻辑运算符、三元运算符、if和switch语句、for、while和do while循环结构。同时,文章还提供了一些实际的编程练习,包括计算1-5的总和、输出折纸次数和判断回文数等。
📚接下来阅读
📎 参考内容
有关使用上的问题,欢迎您在底部评论区留言,一起交流~
- 作者:NGX
- 链接:https://080912.xyz/article/f03dd4c8-92cf-4224-9662-bccb704c2db6
- 声明:本文采用 CC BY-NC-SA 4.0 许可协议,转载请注明出处。