首页 > 代码库 > java笔记4

java笔记4

第四天笔记

1.数组

概念:用来存放同一种数据类型的容器。

1.1  java中数组的定义:

数据类型[] 数组名 = new 数据类型[长度]

 

1.2数组的长度可以指定也可以不指定

int[] arr = new int[0];

 

 

1.3创建一个int类型的数组

arr : 是一个变量  只是数组的一个引用地址

局部变量存在栈中

成员变量 -- 属性  --- > 对堆区中

静态变量  --- >  共享区域

 

1.4 数组中的使用工具:Arrays

1.4.1  查找数组中是否还有某一个数,对应的索引位置

int result = Arrays.binarySearch(arr, num);

 

1.4.2  做排序

Arrays.sort(arr1);

for (int i = 0;i < arr1.length ;i++ )

{

System.out.println(arr1[i]);

}

 

 

1.5  java中数组一样存在多维 : 二维数组 ,三维数组,....

 

1.5.1   二维数组的定义 格式:

        数据类型[][] 数组名 = new 数据类型[][];

 

        (1)动态初始化:

 

数据类型[][] 数组名 = new 数据类型[][];

 

注意 :前面中括号中数值指的是二维数组元素个数 后面一个是指二维数组

中一维数组的元素个数。

 

       (2)静态初始化:

 

数据类型[][] 数组名称 = {{元素1,..},{元素1,..},{元素1,..}};

 

注意:二维数组中的元素一定是一维数组。

 

例:

int[][] arr = new int[3][4];

arr[0][0] = 1;

 

int[][] arr1 = {{1,2,3},{2,3},{1,4}};

 

int num = arr1[2][1];  // 4

 

          想要接收二维数组中的元素 : 需要用一个一维数组来接收。

 

int[] arr2 = new int[];

arr2 = new int[3];  // 定义了一个二维数组 ,数组中的元素维     初始化数组

int arr3[] = {};  不推荐这样写。

 

 

总结:数组的特点

1.数组中只能存同一种数据类型的数据。

2.数组他会给存入的元素默认分配一个索引值 ,索引从0开始。

3.数组一旦初始化,长度就固定了。

4.数组中元素的内存地址是连续的。

 

 

2.面向对象

 

2.1   java也属于面向对象编程 :

2.1.1  面向对象的三大特征 : 封装,继承,多态。

 

2.2   类,对象。

 对象 :真实存在的唯一的事物。

 

面向对象编程(oop)思想力图使对计算机语言中的事物的描述和自然中的事物

尽可能保持一致。

 

面向对象的核心 找到合适的对象做合适事情。

 

 

2.3  java中如何来找合适的对象:

1.sun已经指定好的类,通过定制好的类创建对象, 需要认识这些类。

2.自定义类 ,通过自定义类来创建对象。

2.4 类中包含

属性 ,方法。

 

   2.4.1 类的定义格式 :

 

 class 类名 {

 

属性(成员变量) : 描述事物的公共的特点。

方法 描述事物的行为 (做什么事情)

 }

 

//通过自定义的类来创建一个对象

格式:

类名  对象名(变量名) = new 类名();

 

2.4.2  成员变量和局部变量额区别:

定义的位置

1.定义在类中,方法外。

2.局部变量是定义在方法中。

作用上:

1.成员变量是用来描述同一类事物(对象)的公共属性。

2.局部变量就是提供一个变量给方法使用

生命周期

1.成员变量随着对象的创建而创建,随着对象的消失而消失。

2.局部变量随着方法调用而创建,出了方法的作用域就消失。

 

初始值来区分:

1.成员变量,如果你没有赋值,它是有默认值的。

int   默认是0

float 默认是0.0f

double  默认是 0.0

boolean 默认 false

char    默认 ‘ ‘

String (引用类型)null;

2.局部变量:

局部变量是没有初始值的,必须初始化才能使用。

 

 

2.4.3   成员变量在当前类中是可以直接通过变量名来使用,如果变量需要在其他类中使用,就需要创建对象(目前是这个样子的

       成员变量 : 作用范围是整个类中 ,如果需要在当前类中使用成员变量,直接拿到变量名就可以使用

java笔记4