🗒️02 | Java基本教程: 运算符、判断、循环等
00 分钟
2024-5-2
2024-6-25
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
完整代码:
输出结果:
notion image

隐式转换与强制转换

数字相加

数字进行运算时, 数据类型不一样不能运算, 需要转成一样的, 才能运算.

隐式转换

隐式转换(自动类型提升)是把取值范围小的数字转成取值范围大的数字.
范例:
取值范围从小到大: byte < short < int < long < float < double
提升规则:
取值范围小的和取值范围大的进行运算时, 小的会先提升成大的, 再进行运算.
byte, short, char在运算的时候会提升为int再进行运算.

强制转换

强制转换是把取值范围大的数字转成取值范围小的数字.
格式: 目标数据类型 变量名 = (目标数据类型) 被强转的数据
范例:

字符串相加

当”+”操作出现字符串时, 这个”+”是字符串连接符, 不是算数运算符. 会将前后的数据进行拼接, 并产生一个新的字符串.
连续进行”+”操作时, 按从左到右依次执行.

字符相加

字符+字符字符+数字是, 会把字符通过ASCII码表查询的数字进行计算.
notion image
notion image

自增自减运算符

符号
作用
说明
变量的值+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
完整代码:
输出结果:
notion image

逻辑运算符

符号
作用
说明
&
逻辑与(且)
并且, 两边都为真, 结果才为真
|
逻辑或
或者, 两边都为假, 结果才为假
^
逻辑异或
相同为false, 不同为true
!
逻辑非
取反

短路逻辑运算符

符号
作用
说明
&&
短路与
结果和&一样, 但是又短路效果
||
短路或
结果和|一样, 但是又短路效果
完整代码:
输出结果:
notion image
就常用的逻辑运算符: &&, ||, !

三元运算符

格式: 关系表达式? 表达式1 : 表达式2;
范例: 求两个数的较大值
计算规则:
  • 首先计算表达式的值
  • 如值为true, 则表达式1的值就是结果
  • 如值为false, 则表达式2的值就是结果
运算符优先级: 小括号优先所有

分支结构——if语句

格式1

范例:

格式2

范例:

格式3

范例:

分支语句——switch语句

范例:

default的位置和省略

  1. default不一定要写在最后, 只是习惯上这么写.
  1. default可以省略, 语法不会报错, 但是不建议

case穿透

  1. 语句体没写break导致的
  1. 当一个case分支在执行完毕后没有遇到break语句而直接继续执行下一个case分支的代码的现象。这意味着,即使下一个case的条件并未满足,其代码也会被执行.
  1. 使用场景: 如果多个case语句体重复了, 可以尝试使用case穿透来简化代码.

Switch新特性

该特性只在JDK12后的版本可用
注: 如果大括号里只有一行代码, 那么可以将其省略.

if和switch的使用场景

  • if的第三种格式: 一般用于对范围的判断
  • switch: 把有限个数据一一列举出来, 让我们任选其一.

循环结构——for

范例: 打印10次HelloWorld
运行结果:
notion image
虽然图里显示打印到了9, 但是别忘了开头是0.
  1. 初始化语句只会执行一次
  1. 判断语句为true, 循环继续
  1. 判断语句为false, 循环结束

小项目: 计算1-5的总和

完整代码:
运行结果:
notion image

循环结构——While

示例: 打印1-100
什么时候用for? 什么时候用while?
  • for循环中, 控制循环的变量, 因为归属在for循环中, 所以循环结束后就不能再被访问了.并且知道循环次数或者循环范围.
  • while循环中, 控制循环的变量不在while语句体内, 所以结束后还可以被访问.并且不知道循环次数或者循环范围, 只知道结束条件

循环结构————do while

练习: ✨输出折纸次数————斯坦福大学Java练习题

题目: 世界最高山峰珠穆朗玛峰(8844.43m≈8844430mm), 现在有一张足够大的纸, 它的厚度是0.1mm, 请问需要折多少次, 才能达到珠穆朗玛峰的高度?
分析及回答:
  • 每一次纸张折叠的厚度是原来的二倍.
  • 由于不知道循环次数或循环范围, 所以用for循环不合适; 有知道结束条件, 所以只利用while循环比较合适.
综上, 完整代码应该是这样的:
输出结果:
notion image

练习: ✨回文数————力扣算法真题

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

🤗 总结归纳

Java基本教程涵盖了运算符、判断、循环等基础知识。文章详细解释了算术运算符、隐式转换与强制转换、字符串相加、字符相加、自增自减运算符、赋值运算符、关系运算符、逻辑运算符、短路逻辑运算符、三元运算符、if和switch语句、for、while和do while循环结构。同时,文章还提供了一些实际的编程练习,包括计算1-5的总和、输出折纸次数和判断回文数等。

📚接下来阅读

📎 参考内容

 
💡
有关使用上的问题,欢迎您在底部评论区留言,一起交流~
上一篇
Google Cloud免费了,可以开高配VPS。无需信用卡
下一篇
解决IDEA Gradle工程控制台输出乱码

评论
Loading...