黑马程序员_编程基础2
来源:互联网 发布:java旅游项目 编辑:程序博客网 时间:2024/05/17 06:07
-------android培训、java培训、期待与您交流! ----------
Java编程基础2:
1、程序流程控制
它包括三种结构:判断,选择,循环结构。
A.if判断结构
if语句常见三种格式,它的特点:
a1.每一中格式都是单条语句。
a2.条件表达式无论写成什么样子,只看最终的结果是true或者false.
a3.它与三元运算符的区别:后者必须要有结果。
B.switch选择语句
特点:
b1.switch语句选择的类型只有四种:byte,short,int,char.
b2.case之间与default没有顺序。先执行第一个case,没有匹配的case执行default。
b3.结束switch语句的两种情况:遇到break,执行到switch语句结束。
b4.如果匹配的case或者default没有对应的break,那么程序会继续向下执行,运行可以执行的语句,直到遇到break或者switch结尾结束。
注意:当default放在第一个位置时候,语句执行顺序依然是先读第一个case!
C.循环语句
有三种:while,do while,for
c1.格式: while(条件表达式){执行语句};
do while:do{执行语句}while();
for(初始化表达式;循环条件表达式;循环后的操作表达式){执行语句}
注意:do while特点是条件不论是否满足,循环体至少被执行一次。
c2.for和while可以互换,区别在于for为了循环而定义的变量再for循环结束时在内存中释放,而后者的变量再循环结束后还可以继续使用。
c3.最简单无限循环格式:while(true),for(;;),原理是没有循环的结束条件。
注意:
1.什么时候使用循环结构?
当需要对某些语句执行很多次的时候,就用循环结构
2.循环的特殊形式:嵌套循环。
凡是循环中还有循环都可以参照嵌套循环的方式来解决,规律:尖朝上可以改变条件,让条件随着外循环的变化;尖朝下可以改变初始化值,让初始化值随外循环变化。
d.break与continue
break(跳出):应用范围包括选择结构和循环结构;
continue(继续):只能作用于循环结构,继续循环!特点结束本次循环,继续下一次循环! 注意:这个两个语句离不开应用范围,并且在该语句下面的语句是执行不到的。
补充两种重要的设计思想:
(1)累加求和思想。
(2)计数器思想
2、函数
定义:定义在类中的具有特定功能的一段独立小程序。也称方法。
特点:
定义函数可以将功能代码进行封装
便于对该功能进行复用
函数只有被调用才会被执行
函数的出现提高了代码的复用性
对于函数没有具体返回值的情况,返回值类型用关键字void表示,
那么该函数中的return语句如果在最后一行可以省略不写。
函数的应用两个明确:
明确要定义的功能最后的结果是什么?
明确在定义该功能的过程中,是否需要未知内容参与运算
3、函数(重载)
定义:在同一个类中,允许存在一个以上的同名函数,只要它们的参数个数或者参数类型不同即可。
特点:与返回值无关,只看参数列表。
什么时候用重载:
当定义的功能相同,但参与运算的未知内容不同,那么这时就定义一个函数名称以表示其功能,方便阅读,而通过参数列表的不同来区分多个同名函数
注意:重载与变量名称、函数返回值类型无关,只与参数列表(参数类型与参数个数)有关!
4、数组(概述-内存结构)
同一种类型数据的集合,是一个容器!!
数组这个容器的最大的好处,能编号。
好处:可以自动给数组中的元素从0开始编号,方便操作这些元素。
内存:不同的内存区域处理数据的方式不一样
A.栈:
数据使用完毕,会自动释放!
局部变量都在栈内存中!即定义在方法中的变量、参数列表中、for循环中的变量等。
B.堆:new出来的实体都是存在堆内存中。
实体包括:数组和对象。
a.每一个实体都有一个内存地址,用这个地址来标示数据存放的位置。
b.对内存中的数据都有默认初始化值。
c.当堆内存中的实体没有引用使用时,会在不确定的时间内被垃圾回收器回收!
C.方法区:静态成员、构造函数、常量池、线程池
D.本地方法区:window系统占用
注意:只要是new的都是新的堆内存空间实体!
-------android培训、java培训、期待与您交流! ----------
- 黑马程序员_编程基础2
- 黑马程序员_编程基础
- 黑马程序员_Java基础_编程基础
- 黑马程序员_编程基础1
- 黑马程序员:Java编程_语法基础
- 黑马程序员_Java基础_网络编程
- 黑马程序员_Java基础_网络编程
- 黑马程序员_java基础_网络编程
- 黑马程序员_学习笔记_Java基础_网络编程
- 黑马程序员_Java基础_网络编程基础相关
- 黑马程序员_Java基础_多线程2
- 黑马程序员_基础加强(2) 枚举
- 黑马程序员_基础加强2
- 黑马程序员_Java基础_多线程2
- 黑马程序员_网络编程(2) TCP
- 黑马程序员_网络编程(2)
- 黑马程序员_网络编程(2)
- 黑马程序员_网络编程2
- 爬天梯-递归方程(类似整数分解)
- 最大子串值
- 《商务智能 管理视角》——(五)数据挖掘(2)
- java基础知识
- 戴维南等效电路示例
- 黑马程序员_编程基础2
- NFS 详解
- android---------provider-----------------
- 智慧地球
- 创业公司没有大公司的安全感、各种福利待遇,怎么激发大家热情把活干好?需要建立什么样的激励机制等?
- 团队成员之间相互信任,对于团队的执行力有多重要?
- AjAX续1
- linux内核下载 编译
- 如何降低技术型团队或者职能团队中优秀人才的流失风险?