Java - 基本运算符

欢迎,未来的Java程序员们!今天,我们将深入探讨Java运算符的精彩世界。如果你以前从未写过一行代码,别担心——我们会从最基础的内容开始,逐步深入。在本课程结束时,你将能够像专业人士一样操纵数据!

Java - Basic Operators

运算符是什么?

在我们开始之前,先来了解一下运算符是什么。在编程中,运算符是特殊的符号,它们告诉计算机执行特定的数学或逻辑操作。你可以将它们视为句子中的动词——它们是执行动作的!

Java算术运算符

让我们从最熟悉的运算符开始——算术运算符。这些运算符从小学开始你就一直在使用了!

加法 (+)

int apples = 5;
int oranges = 3;
int totalFruit = apples + oranges;
System.out.println("总水果数: " + totalFruit);

这段代码的输出将是:总水果数: 8

在这里,我们使用+运算符来添加苹果和橙子。(看?在编程中,我们可以添加苹果和橙子!)

减法 (-)

int startingMoney = 100;
int spentMoney = 25;
int remainingMoney = startingMoney - spentMoney;
System.out.println("剩余的钱: $" + remainingMoney);

输出:剩余的钱: $75

-运算符从一个值中减去另一个值。

乘法 (*)

int widgetPrice = 5;
int widgetQuantity = 7;
int totalCost = widgetPrice * widgetQuantity;
System.out.println("总费用: $" + totalCost);

输出:总费用: $35

*运算符将两个值相乘。

除法 (/)

int pizzaSlices = 8;
int people = 3;
int slicesPerPerson = pizzaSlices / people;
System.out.println("每人分到的披萨片数: " + slicesPerPerson);

输出:每人分到的披萨片数: 2

/运算符将一个值除以另一个值。请注意,当整数值除法时,Java会向下取整到最接近的整数。

取模 (%)

int cookiesLeft = 10;
int peopleWantingCookies = 3;
int leftoverCookies = cookiesLeft % peopleWantingCookies;
System.out.println("剩余的饼干数量: " + leftoverCookies);

输出:剩余的饼干数量: 1

%运算符在除法后给出余数。它非常适用于确定数字是偶数还是奇数,或者用于在一系列值中循环。

Java关系运算符

关系运算符比较两个值,并返回一个布尔结果(true或false)。它们对于在代码中做出决策至关重要。

等于 (==)

int age = 18;
boolean canVote = (age == 18);
System.out.println("这个人可以投票吗? " + canVote);

输出:这个人可以投票吗? true

==运算符检查两个值是否相等。

不等于 (!=)

String weather = "sunny";
boolean stayInside = (weather != "sunny");
System.out.println("我应该待在室内吗? " + stayInside);

输出:我应该待在室内吗? false

!=运算符检查两个值是否不相等。

大于 (>) 和 小于 (<)

int playerScore = 85;
int highScore = 90;
boolean newHighScore = (playerScore > highScore);
System.out.println("达到新的最高分: " + newHighScore);

输出:达到新的最高分: false

>运算符检查左值是否大于右值,而<则相反。

大于等于 (>=) 和 小于等于 (<=)

int requiredAge = 18;
int personAge = 18;
boolean canEnter = (personAge >= requiredAge);
System.out.println("这个人可以进入吗? " + canEnter);

输出:这个人可以进入吗? true

这些运算符检查一个值是否大于/小于或等于另一个值。

Java逻辑运算符

逻辑运算符允许你组合多个条件。

与 (&&)

boolean hasTicket = true;
boolean hasID = true;
boolean canAttendConcert = hasTicket && hasID;
System.out.println("可以参加音乐会: " + canAttendConcert);

输出:可以参加音乐会: true

&&运算符仅在两个条件都为true时返回true。

或 (||)

boolean isWeekend = true;
boolean isHoliday = false;
boolean canSleepIn = isWeekend || isHoliday;
System.out.println("可以睡懒觉: " + canSleepIn);

输出:可以睡懒觉: true

||运算符如果至少有一个条件为true,则返回true。

非 (!)

boolean isRaining = false;
boolean shouldTakeUmbrella = !isRaining;
System.out.println("应该带伞: " + shouldTakeUmbrella);

输出:应该带伞: true

!运算符反转布尔值。

赋值运算符

在我们的示例中,我们一直在使用基本的赋值运算符=。但是Java有一些简写运算符,它们将赋值与其他操作结合在一起。

加法赋值 (+=)

int score = 0;
score += 10; // 这相当于:score = score + 10;
System.out.println("当前得分: " + score);

输出:当前得分: 10

其他赋值运算符

Java还有-=*=/=%=,它们的工作方式类似。

Java运算符优先级和结合性

就像在数学中一样,Java运算符有一个优先级顺序。例如:

int result = 5 + 3 * 2;
System.out.println("结果: " + result);

输出:结果: 11

乘法在加法之前发生,就像在普通数学中一样。

以下是运算符优先级的一个简化的表格(从高到低):

优先级 运算符
1 * / %
2 + -
3 < > <= >=
4 == !=
5 &&
6
7 =

请记住,您始终可以使用括号明确指定操作的顺序:

int result = (5 + 3) * 2;
System.out.println("带括号的结果: " + result);

输出:带括号的结果: 16

就这样!你已经迈出了Java运算符世界的第一步。这些小小的符号可能看起来很简单,但它们是你用Java创造的所有惊人事物的基础。继续练习,很快你就能组合这些运算符来解决复杂问题并构建令人惊叹的程序。编程愉快!

Credits: Image by storyset