Java操作
现在,我们应该对什么是Java变量,如何声明它们有了一个了解。现在是时候更详细地研究可以对变量执行哪些操作了。
Java操作是可以读取和写入变量的值,对变量执行算术并控制程序流程的指令。
变量操作
Java具有一组基本的变量操作运算符。我们可以将值分配给变量,读取变量的值,并对变量值执行算术运算。最后,Java还具有允许我们创建(实例化)对象并将该对象的引用分配给变量的操作。
变量赋值
Java变量的文本中介绍了变量赋值,但是在这里我将向我们展示一个简短的示例:
int age; age = 25; int yearBorn = 1975;
此示例显示了两个变量分配。第一行声明了一个名为age
的int
变量。第二行将值" 25"分配给"年龄"变量。第三行创建一个名为" yearBorn"的" int"变量,并在同一条语句中为其分配值" 1975"。
读取变量
Java变量的文本中也介绍了变量读取,但这是一个简短的示例:
String name = "Hyman"; String name2 = name;
这个示例首先创建一个名为" name"的变量,并为其分配字符串值" Hyman"。在第二行中,将name
变量的值分配给name2
变量。在分配变量名称之前,先读取其名称。这是读取变量值的一种方法。
变量运算
变量运算是指对变量值进行计算。这是在Java中添加数字(变量)的示例:
int sum = 123 + 456;
" +"号用作加法运算符。执行完这一行后,变量" sum"将包含123和456的和。
这是一个更高级的添加示例:
int price1 = 123; int price2 = 456; int total = price1 + price2; int totalPlusFee = total + 999;
该示例首先创建两个int
变量(整数编号),然后为它们分配两个不同的值。然后,示例的第三行将两个价格变量相加,并将总和作为值分配给"总计"变量。该示例的最后一行创建一个名为totalPlusFee
的变量,并将其值设置为total
变量的值加上一个固定数字(999)。
使用-
运算符将变量彼此相减。这是一个快速的减法示例:
int diff = 456 - 123;
执行此行后,变量" diff"将包含从456中减去的123值。
变量乘法使用\*
运算符完成。这是一个简单的乘法示例:
int result = 123 * 456;
执行此行后,变量"结果"将包含123乘以456的值。
使用/
运算符执行除法。这是一个划分示例:
int result = 100 / 10;
执行此行后,变量"结果"将包含将100除以10的结果。注意,因为" int"是整数类型,所以除法结果中的所有分数都将被切掉最终结果。
这是一个稍微复杂的算术示例:
int price = 12; int amount = 23; int totalPrice = price * amount; int discount = 20; //20% int totalAfterDiscount = (totalPrice * (100-discount)) / 100;
在此示例中,声明了两个变量,分别为价和量。每个分配一个值。然后,创建一个名为" totalPrice"的变量,并为其分配" price * amount"(价格乘以金额)的值。
第三,声明一个"折扣"变量,并将其赋值为" 20"。该变量将被解释为百分比。
第四,声明" totalAfterDiscount"变量,计算没有20%折扣的总价格,并将其分配给" totalAfterDiscount"。
对象实例化
变量既可以指向原始值(int,float等),也可以指向对象。对象是某个类的实例。我们可以使用new
关键字实例化某个类的对象。这是一个例子:
MyClass myClassInstance = new MyClass();
这个例子声明了一个MyClass类的变量(自定义数据类型),然后创建一个新的MyClass实例,并将对该实例的引用分配给myClassInstance变量。
程序流程
Java还具有一组旨在控制程序流的操作。这些操作中的每一个都在各自的文本中进行了更详细的介绍,但是我将在这里简要介绍它们。
if语句
Javaif
语句在要执行的两个代码块之间进行决策。这是一个简单的示例:
int amount = 9; if(amount > 9) { System.out.println("amount is greater than 9"); } else { System.out.println("amount is 9 or less)"); }
这个例子首先声明了一个名为" amount"的变量,并为其赋值" 9"。
接下来发生的是,if语句将amount变量的值与9进行比较。如果该值大于9,则将执行第一个代码块(位于{}内)。否则,第二个代码块(在" else"关键字之后)被执行。
因此," if"语句可用于选择要执行的两个块中的哪一个。实际上," else"块是可选的,但是Java上的文字if更详细地解释了所有这些。
switch语句
switch语句的工作原理类似于if
语句,不同之处在于它可以在两个以上的代码块之间进行选择。这是一个简单的示例:
int amount = 9; switch(amount) { case 0 : System.out.println("amount is 0"); break; case 5 : System.out.println("amount is 5"); break; case 10 : System.out.println("amount is 10"); break; default : System.out.println("amount is something else"); }
此示例首先创建一个名为" amount"的变量,并为其分配值" 9"。
其次,示例"切换""金额"变量的值。在switch语句内部有3个case语句和一个default语句。
每个case语句都会将amount变量的值与一个常量值进行比较。如果'amount'变量值等于该常数,则执行冒号(:)之后的代码。注意每个语句后的break
关键字。如果此处没有break
关键字,则执行可以继续执行其余的case
语句。关键字break使执行跳出switch语句。
如果没有其他case
语句与打开的变量的值匹配,则执行default
语句。
如果没有case
语句不匹配amount
变量的值,则执行default
语句。如果前面的case
语句最后没有break
命令,也可以执行default
语句。
关于Java switch语句的文本中更详细地介绍了switch语句。
for循环
只要某些条件为真," for"循环就会重复执行一段代码。这是一个简单的示例:
for(int i=0; i < 10; i++) { System.out.println("I is: " + i); }
这个例子是一个标准的" for"循环。在for关键字之后的paranthetheses()中,有三个用分号(;)分隔的语句。
第一条语句声明一个名为" i"的" int"变量,并将其赋值为" 0"。当for
循环开始时,该语句仅执行一次。
第二条语句将变量i的值与值10进行比较。如果" i"的值小于" 10",则" for"循环将再执行一次。该语句在for循环中的每次迭代中执行。
第三条语句增加" i"的值。该语句还在for循环的每个迭代中执行一次。
因此,该" for"循环的结果是循环的主体执行了10次。对于小于10(0到9)的每个" i"值,都应执行一次。
当我们需要多次重复某些操作时,Javafor
循环很有用。例如,对数组中的每个元素执行一组操作。
Java for循环在有关Java for循环的文章中有更详细的介绍。
while循环
Java的while循环类似于for循环。当特定条件为真时,它们将执行代码块。这是一个简单的示例:
int amount = 0; while(amount < 10) { System.out.println("amount is " + amount); amount++; }
此示例首先声明一个名为" amount"的变量,并为其分配值" 0"。
其次,执行while循环。只要在括号内的比较结果为true时,就会执行while循环。也就是说,只要变量" amount"小于10.
在" while"循环内," amount"变量在第一行中打印出来。在第二行中,amount
变量增加。变量名后的" ++"表示将变量加1. 当amount
变量的值达到10时,while循环内的条件将不再计算为true,并且while循环停止。
关于Java while循环的文章中更详细地介绍了while循环。
方法调用
方法是可以作为单个语句执行的语句组。执行方法也称为调用方法或者调用方法。这是一个具有两个方法的类的简单示例,其中一个方法调用另一个方法:
public class MyClass() { public void printBoth(String text1, String text2) { print(text1); print(text2); } public void print(String text) { System.out.print(text); } }
这个类包含两个方法:printBoth()
和print()
。
注意printBoth()如何两次调用print()方法,每次都有不同的参数传递给printBoth()方法。
因此,print()方法是可重用的代码块,可以从任何地方调用。当print()方法执行完毕时,程序跳回到调用print()方法的行之后。因此,可以使用方法跳转到程序的不同部分,然后从那里再次返回。
有关方法的详细信息,请参见Java方法。