七、输入和输出1、Java5.0中的输入,要import java.util.*;Scanner in = new Scanner(System.in);String name = in.nextLine(); //读入一行String firstName = in.next(); //读入一个单词,以空格分隔int age = in.nextInt(); //读入一个整数,in.nextdouble()则读入一个浮点数2、格式化输出,有各种各样的属性可供输出。System.out.printf("%d", a );
八、控制流程1、块,就是{}之间的部分,C++与Java的不同是在内块中无法定义外块中的东西。public static void main(String[] args){ int n; . . . { int k; int n; // 不能重复定义,而在C++中是可以的。 . . . }}2、选择和循环语句基本上和C和C++中相同。3、带标签的break和continue。可以用break和continue到指定的标签。
九、大数据就主要是BigInteger 和 BigDecimal,没什么特别的。
十、数组int[] a = new int[100]数据是从0~99,如果引用100会出异常。数组的长度可用a.length获得,数组的长度不能改变,如果需要改变用array list。
for each可以依个访问,必须实现Iterable的接口。
初始化可以使用:int[] smallPrimes = { 2, 3, 5, 7, 11, 13 };或者smallPrimes = new int[] { 17, 19, 23, 29, 31, 37 };
可以定义 new int[0]这种形式。
数组的拷贝:int[] luckyNumbers = smallPrimes; // luckyNumbers 和 smallPrimes 引用同一片内存要使用不同的内存可以使用System.arraycopy(from, fromIndex, to, toIndex, count);
命令行参数java Message -g cruel world
args[0]: "-g"args[1]: "cruel"args[2]: "world"
数组的排序:Arrays.sort(a)
binarySearch 查找,如果找到返回index ,如果没有找到返回-r,-r-1是插入的位置fill 填相同的值
多维数组double[][] balances;balances = new double[NYEARS][NRATES];
int[][] magicSquare = { {16, 3, 2, 13}, {5, 10, 11, 8}, {9, 6, 7, 12}, {4, 15, 14, 1} };
for (int i = 1; i < balances.length; i++){ for (int j = 0; j < balances[i].length; j++) { double oldBalance = balances[i - 1][j]; double interest = . . .; balances[i][j] = oldBalance + interest; }}
for (double[] row : balances) for (double b : row) do something with b
不等列的数组int[][] odds = new int[NMAX + 1][];
for (int n = 0; n <= NMAX; n++) odds[n] = new int[n + 1];
for (int n = 0; n < odds.length; n++) for (int k = 0; k < odds[n].length; k++) { // compute lotteryOdds . . . odds[n][k] = lotteryOdds; }