10.控制流程
10.1 选择分支(略)
- if(…){…}
- if(…){…}else{…}
- if(…){…}else if(…){…}else{…}
10.2 循环(略)
- while(…){…}
- do{…}while(…);
- for( ; ; ){…}
10.3 多重选择(略)
switch()
{
case 1:
...
break;
case 2:
...
break;
...
default:
...
break;
}
11.大数
java.math包中提供两个包BigInteger和BigDecimal,这两个包可以解决基本的整数和浮点数精度不能够满足需求的问题,它们这两个类可以处理任意长度数字序列的数值。
- BigInteger类实现任意精度的整数运算
- BigDecimal类实现任意精度的浮点数运算
常用的方法:
- 静态方法BigInteger.valueOf(整数)/BigDecimal.valueOf(浮点数):将普通的数值转换为大数;
- BigInteger add(BigInteger other):大数加法;
- BigInteger substract(BigInteger other):大数减法;
- BigInteger multiply(BigInteger other):大数乘法;
- BigInteger divide(BigInteger other):大数除法;
- BigInteger mod(BigInteger other):大数取余;
- BigInteger sqrt():大数求平方根;
- int compareTo(BigInteger other):比较两个大数大小,相等返回0,大于返回正数;
更多详细的BigInteger类的方法:BigInteger (Java SE 11 & JDK 11 ) (runoob.com)
更多详细的BigDecimal类的方法:BigDecimal (Java SE 11 & JDK 11 ) (runoob.com)
12.数组(略)
数组是一种数据结构,用来存储同一种类型值的集合。
eg: int[] array = new int[10]//声明一个int类型的数组变量array,并创建对应的变量空间,数组长度为10;
tips:java.util.Arrays类的方法使用
打印数组中的所有值,可以利用Arrays类的toString方法。调用Arrays.toString(array),会返回一个包含数组元素的字符串,这些元素包括在中括号内,并用逗号隔开。如“[2, 5, 8, 10]”
数组的拷贝,可以直接将数组变量赋值给另一个数组变量,两个数组变量指向同一个数组空间,只是数组指针的名字不同。如果希望在内存空间中拷贝出一个新的数组,则需要使用Arrays类的copyOf方法。
数组的排序,要想对数值型数组进行排序,可以使用Arrays类中的sort方法。这个方法使用了优化的快速排序算法。
更多Arrays类的方法API:Arrays (Java SE 11 & JDK 11 ) (runoob.com)
12.1 for each循环
java中的for each循环可以用来依次处理数组(或者其他元素集合)中的每个元素,而不必指定下标值;
增强for循环的语法格式:for(variable : collection) statement,其中的 variable用来暂存集合中每一个元素;
其中collection这个集合表达式必须是一个数组或者是一个实现了Interable接口的类对象如ArrayList。
for (int element : array){
System.out.println(element);
}
12.2 多维数组(略)
注意:foreach循环语句不能自动处理二维数组的每一个元素,它会循环处理行,而这些行本身就是一维数组。要想访问二维数组a的所有元素,需要使用两个嵌套的循环。
for(double[] row: array)
for(double value : row)
do something with value
快速打印一个二维数组的元素可以利用Arrays类下的deepToString( )方法