5.30课堂笔记之模式匹配&数组

模式匹配:

父串当中首次出现子串的的位置叫做模式匹配

最多比较几次:父串的长度-子串的长度

ContinueWithLabelDemo.java

test:
for(i=0;i<16;i++)//第0次
{
j=i;//不能移动i要移动j
for(j=0;j<4;j++)//第0次的各趟
{
if(searchMe.charAt(j)!=Substring.charAt(k))
continue test;//跳出label所标识的那一层循环的本次循环
              //or跳出test所标识的内层循环的本次循环
j++;
}
输出i;
break test;
}

//外层:16次  父串长度-子串长度
//内层:4次   子串长度
/*
    start= searchme.substring(i);     look for a
    end=searchme.substring(i+4,20);   tring
    start+”AAA”+end
*/

数组

是一个容器,存放数据(基本类型和引用类型)。

越界:运行时异常

//数组下标越界异常:ArrayIndexOutOfBoundsException

特点:

(1)类型相同

(2)空间连续

(3)长度固定


数组变量的定义:

(1)中括号不能写数字

(2)不能int a[ ];

int [ ] a;

Date[ ] d;

 //定义方式两种
type[]  arr_name; 推荐使用
type  arr_name[];

创建数组对象(在堆内):

//ArrayDf.java

a=new int[5];

有属性length,有方法toString()和equals()但是没有复写。

对象是int[ ]类型


如何访问:

数组对象有一个地址就是a,a也代表数组对象的数组名,也就是首元素的地址。a+2

a[2]是数组元素(空间)的标识,也就是数组元素名,间接寻址。

a2=5;直接寻址。


元素和变量都是一块空间。变量空间可以在栈,堆,方法区开辟空间。
元素要依赖对象,只能在堆里开辟空间。

变量寻址:直接寻址,编译时建立变量名、地址、映射表,
元素寻址:间接寻址,通过首地址+偏移量

创建一个数组对象相当于创建了多个变量

new int [0];创建空数组

数组类型不决定于数组长度

数组对象赋值,也就是数组对象的传递,数组名也就是数组对象的首地址

命名方式、寻址方式不同

猜你喜欢

转载自blog.csdn.net/qq_36154665/article/details/80531460