黑马程序员_Java基础学习笔记2

来源:互联网 发布:js导出excel表格插件 编辑:程序博客网 时间:2024/05/23 13:53

--循环结构

whiledowhilefor)  

do - while不管判断是否为true,都会执行一次)

  遍历----就是循环     

\t   :制表符   (常用于制作表格形式)

--------------------   for(表达式1;条件;表达式2-----------------------------------

局部代码块,常用于节省内存空间。如果一个变量只在一个代码中需要运行,则把这个代码和这个变量定义在具备代码块中即可。也可以叫做设置局部变量的生命周期。

 

for语句无限循环是省略for中的三条语句。

用嵌套循环做图形,每行递增时:改变内循环的条件;每行递减时:改变内循环的表达式初始值;


 

-break(跳出)   应用范围----选择结构和循环结构 (直接退出结构)

-continue(继续)  :应用于循环(跳出本次循环,进行下一次循环)

为循环起别名: 在循环语句前加上 :  别名 冒号    如 :  s for( ; ; ;)

 作用:在循环中 breakcontinue后面跟循环的别名,来控制指定循环  如, break  s

---注意breakcontinue的作用范围;

 

 

函数

--函数的定义:(为了提高代码的复用性,对代码的抽取)

  函数就是定义在类中的具有特定功能的一段独立小程序;  函数也称为方法;

 

--函数的格式:

  访问修饰符 返回值类型 函数名(参数类型 形参1,参数类型 形参2.........

 {

      执行语句;

      return 返回值;

  }

返回值类型:函数运行后的结果的数据类型。

参数类型:是形式参数的数据类型。

形式参数:是一个变量,用于存储调用函数时传递给函数的实际参数。

实际参数:传递给形式参数的数值。

-return : 用于结束函数。

返回值:该值会返回给调用者。

 

 

--函数的特点:

  -定义函数可以将功能代码进行封装;

  -便于对该功能进行复用;

  -函数只有被调用时才会被执行;

  -函数的出现提高了代码的复用性;

 

----对于函数没有具体的返回值的情况,返回值类型用关键字void表示,那么该函数中的return语句如果在最后一行可以省略不写。

注意:1,函数中只能调用函数,不可以在函数内部定义函数;2,定义函数时,函数的结果应该返回给调用者,交由调用者处理。

 

---定义一个函数的思路:

1,既然一个函数是一个独立的功能,那么先明确该功能的运算结果是什么;  

2,在明确定义该功能的过程中是否需要未知的内容参与运算。

 

---函数的重载(overload

  重载概念:在同一个类中,允许存在一个以上的同名函数,只要参数个数或参数类型不同即可;  

  重载特点:与返回值类型无关,只看参数列表。

  重载好处:方便阅读,优化了程序设计。

数组

--概念: 同一种类型数据的集合,其实数组就是一个容器。

--数字的好处:可以自动给数组中的元素从零开始编号,方便操作这些元素。

 

格式1: 元素类型[ ]  数组名 = new 元素类型元素格式或者数组长度

       如: int[ ]  arr = new int [ 4];    ( arr的类型是数组类型 )

  ---格式1是动态初始化,没有手动的进行赋值,jvm会自动的为其初赋值。

 

格式2: 元素类型[ ]  数组名 = new 元素类型[ ] { 元素1,元素2........}

       如: int[ ]  arr = new int[ ]{3, 4 ,4, 2 , 5 ,8};  //这种写法可以先声明后建对象。

int[ ]  arr = {3, 4 ,4, 2 , 5 ,8};  //这种无法分开写

  ---格式2是静态初始化,在定义的时候手动就为其赋值了。

 

数组的长度:---> 数组名。Length

数组的最大角标:---> 数组名。Length-1

 

---内存结构:

   --java程序在运行时,需要在内存中分配空间;为了提高运算效率,对空间进行了不同区域的划分,因为每一片区域都有特定的处理数据的方式和内存的管理方式。

(划分了以下5个区域):

 

--栈内存:

  用于存储局部变量,当数据使用完,所占空间会自动释放。

  方法进占时就会压栈,也就是后进的把前面先进的压在下面,如main()函数就在栈的最底部。如,枪的弹夹,为弹夹上子弹一样。

  方法在使用完以后,会出栈,即弹栈。

 

--堆内存:

1,数组和对象,通过new建立的实例都存放在堆内存中;

2,每一个实体都有内存地址;

3,实体中的变量都有默认初始化值;

4,实体不在被使用,会在不确定的时间内被垃圾回收器回收。(数组变量指向 null时,数组所占内存就会变成垃圾)

 

--方法区、本地方法区、寄存器(这三个区域在后面讲解)

 

 

(引用类型相当于:快捷方式)

--数组常出现的错误:

 ArrayIndexOutofBoundsException:  操作数组时,访问到了数组中不存在的角标

NullPointerException :  空指针一次,当引用没有任何指向时,即为null的情况,该引用还在用于操作实体。

 

原创粉丝点击