昨日学的数组进行一个复习总结(代码部分都是运行过的无错误):

  1. 输入输出
import java.util.*;
public class Review {
	//输入输出
//	System.out.println(a);//为什么不能放在函数的外面呢?
	public static void main(String[] args) {
		Scanner in =new Scanner(System.in);
		float a = in.nextFloat();
		System.out.println(a);
	}
}
  1. char数组的默认值为空格。
  2. 一、二维数组的两种创建方式
/*static*/
		int[] arr= {1,2,3};
		int[] arr1= new int[] {1,2,3};
		int[][] arr3= {{1}};
		int[][] arr4=new int[][] {{1}};
		/*active*/
		int[] arr2 = new int[5];
		int[][] arr5 =new int[3][];
  1. 内存结构及其作用:堆(用来存放new出来的东西,比如数组的具体值)栈(放局部变量和引用名,通过指针找到堆中的具体存储位置)方法区(存放类名啊包名啊这些东西,还有常量池(字符串常量池))静态域(静态变量:static修饰的)。
  2. 数组的两种常见异常及其引发原因: java.lang.ArrayIndexOutOfBoundsException超出内存大小、java.lang.NullPointerException空指针,找不到具体存储值。
  3. 打印杨辉三角的方法:二维数组,我用了内部类的构造函数。
  4. 数组排序种类及其实现(说思路,考前突击一下):总共十种,直接选择(将第一个位置的数值与每一个数进行对比,将比较大的移过来,优化:),插入,冒泡,快速排序(Arrays.sort()方法用的就是这种排序方式),堆排序,桶排序,计数,归并,希尔,基数。
    数组的遍历(1.for循环。2.用Arrays类中的toString方法,3.for each方法)
System.out.println(Arrays.toString(arr1));
		for(int a1:arr1) {
			System.out.println(a1);
		}
  1. 运算符的优先级:(),++--!,口诀:加减乘除比较是否相等那与异或或与或有什么区别,三元,赋值。14级。
  2. 复制数组的时候为什么不能直接赋值过去:因为只是把名字给他了。
  3. java语言的特点:跨平台,面向对象,健壮性。
  4. 什么叫健壮性(鲁棒性):最大程度避免或减少程序错误的发生,主要措施有:编译运行中对错误的检查,自己操作内存不要指针等减少错误发生,垃圾回收机制,异常处理机制。
  5. jdk文件夹及其下属文件夹的含义及作用:bin 开发工具(javac.exe java.exe),include(),lib(),demo()jre
  6. 数据类型之间的计算转换关系:十一种数据类型:char(2byte)byte boolean short(2byte) int(4b) long(8b) float(4b) double(8b) String class interface。计算的时候往位数高的自动转,可以强制转换会损失精度,与String计算都默认是string。需要注意:char short byte 之间运算的时候,默认结果为int型!!