先放一个很有用的网页链接~~纯净天空
哈,,,终于考完期末了,,开始整备忘录
今天内容比较少,简单记录一下。
直接上图了
额等等,给自己提个醒,上次学的文本块忘了,,这里强调一下:
n是缩进,如果n<0的话,有前导空格会删除相应数目的前导空格,直到删除完毕或者没有前导空格文本块会自动保存输入格式(其实也就是在每一行后面自动补'n')。
然后再简单画一下数组创建时对堆栈的使用图:
我为啥弄的这么多彩色?我开心 - v -
下面上图了
package project; public class Main { public static void main(String[] args) { long begin = System.currentTimeMillis(); System.out.println("创建数组时对堆栈的使用:"); System.out.println(" 例如:int arr = new int[5]:n" + " 在栈中压入变量arr,并在堆中为其分配空间。栈中变量地址" + " 指向堆中内存地址。n" + " 而int arr1 = {1, 2, 3}的静态写法,其实是int arr1 " + " = new int[]{1, 2, 3}的缩写,先开辟空间再替换值,n" + " 在内存中的开辟过程与动态一致。nn" + "对多维数组与String型数组的说明:n" + " 多维数组的内存从外向内逐层分配以地址指向地址...最后指向" + " 堆中内存的方式进行创建n" + " String型数组的存储与普通数组略有不同,除第一维以外,它n" + " 的存储结构与普通数组相同,而第一维的String型数据并不存储在n" + " 堆,而是存储在方法区的常量池中。nn" + "多维数组的遍历:"); System.out.println(""" int[][] a = new int[][]{{0, 1, 2},{3, 4}, {5}}; for(int i = 0; i < a.length(); i++){ for(int j = 0; j < a[i].length(); j++){ ...//使用数组自带的方法判断循环距离,防止不整齐的数组出现溢出 } } """.indent( 4 )); long end = System.currentTimeMillis(); System.out.println("nn本次优化后运行时长为" + (end - begin) + "ms"); } }



