Java笔记 day3

    技术2024-04-12  83

    Scanner

    新建一个Scanner对象实例,Scanner scanner=new Scanner(System.in) ,键盘输入内容,回车结束。 通过scanner. next()获取输入内容,可以将其赋值给String类型变量,遇到空格结束,空格后的内容不会获取。 此外还有nextInt等其他类型。 scanner.nextLine()也是获取输入内容,遇到回车结束,获取回车前全部内容。 通过scannner.hasNext()、scanner.hasNextLine是否为ture判断是否有输入。

    可变参数(不定向参数)

    public 方法类型 方法名(参数类型… 参数名){ } 在参数类型后面加省略号,定义其为可变参数,一个方法只能有一个可变参数,并且必须放在最后一个定义。

    递归

    边界条件:当满足边界条件,结束递归。

    数组内存

    数组

    图上数组已经赋值,没有初始化的数组默认值是0;

    稀疏数组

    如图,左边为原始数组,0个数很多,浪费资源。右边是稀疏数组。 用一个我新的二维数组记录有效值,第0行记录数组的行列数和有效值个数。 每一行的第一第二列记录原始二维数组有效值的坐标,第三列记录值。新的二维数组的行数是原始数组有效值个数+1(第一行记录的是原始数组信息,所以+1),列数是3(第一列行坐标,第二列是列坐标,第三列是值)。

    以下用array原始[][]表示原始的数组,用array稀疏[][]表示稀疏数组。 还原稀疏数组时,读取稀疏数组第一行的值,得到原始数组的大小(行列数)。 比如 array原始[] []=[array稀疏[0][0]] [array稀疏[0][1]]; 相当于图中 array原始[] [] =[6] [7] 根据稀疏数组的坐标定位有效值的位置,还原原始数组。 比如第一个有效值坐标为 array原始[0][3]=22; 第一行拿到原始数组的行列数,遍历行列数,除有效值外其他位置为0; 再遍历稀疏数组,

    for(int i=1;i<array稀疏.length;i++) //从稀疏数组第一行开始遍历,第0行是原始数组的信息 { array原始[array稀疏[i][0]][array稀疏[i][1]]=array稀疏[i][2]//拿到坐标并且赋值 }
    Processed: 0.011, SQL: 9