文章目录:
一、基本算术操作
java语言中的算术运算符有加(+)、减(-)、乘(*)、除(/)、取余(%),一共5个,相关的运算语句与其他语言基本一致,这里就不再赘述。
//取余(%)要求操作数为整型。
//可通过取余(%)运算来判断一个数是否能被另一个数整除。
程序代码:
package basic02;
public class BasicOperations {
public static void main(String[] args) {
int tempFirstInt,tempSecondInt,tempResultInt;
double tempFirstDouble,tempSecondDouble,tempResultDouble;
tempFirstInt = 15;
tempSecondInt = 4;
tempFirstDouble = 1.2;
tempSecondDouble = 3.5;
//Addition
tempResultInt = tempFirstInt + tempSecondInt;
tempResultDouble = tempFirstDouble + tempSecondDouble;
System.out.println("" + tempFirstInt + " + " + tempSecondInt + " = " + tempResultInt);
System.out.println("" + tempFirstDouble + " + " + tempSecondDouble + " = " + tempResultDouble);
//Subtraction
tempResultInt = tempFirstInt - tempSecondInt;
tempResultDouble = tempFirstDouble - tempSecondDouble;
System.out.println("" + tempFirstInt + " - " + tempSecondInt + " = " + tempResultInt);
System.out.println("" + tempFirstDouble + " - " + tempSecondDouble + " = " + tempResultDouble);
//Multiplication
tempResultInt = tempFirstInt * tempSecondInt;
tempResultDouble = tempFirstDouble * tempSecondDouble;
System.out.println("" + tempFirstInt + " * " + tempSecondInt + " = " + tempResultInt);
System.out.println("" + tempFirstDouble + " * " + tempSecondDouble + " = " + tempResultDouble);
//Division
tempResultInt = tempFirstInt / tempSecondInt;
tempResultDouble = tempFirstDouble / tempSecondDouble;
System.out.println("" + tempFirstInt + " / " + tempSecondInt + " = " + tempResultInt);
System.out.println("" + tempFirstDouble + " / " + tempSecondDouble + " = " + tempResultDouble);
//Modulus
tempResultInt = tempFirstInt % tempSecondInt;
System.out.println("" + tempFirstInt + " % " + tempSecondInt + " = " + tempResultInt);
}//of main
}//of class BasicOperations
运行结果:
二、println的中阶用法
1.println()方法
在java中,我们知道System.out.println();是用于输出的,但对于其本质可能并不是特别清楚。事实上,System是java.lang包中的一个final类,这一点在如下图的悬浮窗提示中可以得知,因为每个java程序默认import java,lang.*,所以即便我们没有手动导入System类,也还是可以进行访问。
System.out是一个PrintStream类型的变量,而在PrintStream中有多个print()和println()方法重载,所以可以输出多种类型的数据。如下图我们可以看到在System类中public static final PrintStream out = null;,因此可知out是System里的一个静态数据成员,并且是java.io.PrintStream类的引用,同时正因为out被关键字static修饰,所以可以直接通过类名.成员名即System.out来引用。
println()是java.io.PrintStream类里的一个方法,因为System.out是java.io.PrintStream实例的引用,所以可以通过System.out.println();来调用此方法。其中,println()的自动换行功能实际上是println()先后调用print()、newline()从而实现的。
2.println的复合输出
2.1println的复合输出
println的复合输出需要用到加号(+)和双引号(“”),二者的作用如下:
加号(+):链接作用
双引号(“”):固定字符用引号引起来,引号之外格式化输出字符串所对应的值
例如:
package basic02;
public class CompoundOutput {
public static void main(String[] args) {
int tempFirst,tempSecond;
tempFirst = 2;
tempSecond = 4;
System.out.println(tempFirst + " + " + tempSecond);
}
}
2.2字符串的拼接
在闵老师给出的关于基本算术操作的代码中,可以发现每一句System.out.println()的括号里都会首先加上一个空引号"",当去掉这个空引号""后运行结果并没有改变,那么这个空引号""的作用到底是什么呢?
在java中,当使用加号+连接一个字符串和一个非字符串(比如字符)时,会触发字符串的拼接操作,此时的非字符串会被转换为字符串然后再与其他字符串连接起来,这个过程称为字符串拼接或字符串连接。
例如:要输出“我爱学习”,如果只使用加号+连接如下四个非字符串(四个字符)“我”、“爱”、“学”、“习”,运行结果就会是四个ASCll值的和。
package basic02;
public class CompoundOutput {
public static void main(String[] args) {
char c1 = '我';
char c2 = '爱';
char c3 = '学';
char c4 = '习';
System.out.println(c1 + c2 + c3 + c4);
}
}
但如果加上空引号变成System.out.println("" + c1 + c2 + c3 + c4);,运行结果就会变成“我爱学习”。这是因为空引号""起到了空字符串的作用,触发了字符串的拼接操作,因此后面的四个非字符串(四个字符)就被转换为了字符串,c1、c2、c3、c4依次拼接到空字符串上,所以最终得到结果“我爱学习”。
package basic02;
public class CompoundOutput {
public static void main(String[] args) {
char c1 = '我';
char c2 = '爱';
char c3 = '学';
char c4 = '习';
System.out.println("" + c1 + c2 + c3 + c4);
}
}
总结
1.变量命名时尽量做到见名知意,例如:在上文的代码中,tempFirstInt就很容易知道是代表第一个整型数据,而tempSecondDouble则代表第二个实型数据。
2.为了增强代码的可读性,代码区域明确分为数据声明、数据初始化、数据操作三个部分,同时每个部分用空行隔开,并对每个功能段进行简要的注释说明。
3.为了增强代码的可读性,运算符与运算符之间、运算符与变量之间用空格隔开。