-
变量有自己的作用域,对于for来讲,如果将用于控制循环的增量定义在for语句中,那么该变量只在for语句内有效,for语句执行完毕,该变量在内存中被释放。
-
For和while可以进行互换,如果需要定义循环增量,用for比较合适。
int x = 1;
for(System.out.println("a");x<3; System.out.println("c"))
{
System.out.println("d");
++x;
}
输出的字母为adcdc
w:for (int x = 1; x <= 9; ++x)
q:for (int y = 1; y <= x; ++y)
w: q:是循环标号
break ;跳出 continue(继续)
函数也称为方法
函数的格式:
修饰符返回值类型函数名(参数类型形式参数1,参数类型形式参数2,…)
{
执行语句;
return返回值;
}
public static void getResult(int num)
{
returnnum * 3 + 5;
}
定义在调用语句的上面部分和下面部分都可以
当函数的返回值类型是void时,函数中的retur语句可以省略不写。
函数里可以调用函数,不可以定义函数。
如何定义一个函数?
-
既然函数是一个独立的功能,那么先明确该功能的运算结果
-
再明确在定义该功能的过程中是否需要未知的内容参与运算
什么时候用重载?
当定义的功能相同,但参与运算的未知内容不同。那么,这时就定义一个函数名称以表示功能,方便阅读,而通过参数列表的不同来区分多个同名函数。
Void show (int x, int y)
Int show(int x, int y) 没有重载,不允许这两个函数在一个类中同时存在。
数组:同一个类型数据的集合,其实数组就是一个容器.
定义格式1:
元素类型[]数组名= new元素类型[元素个数或数组长度];
比如 int[] x = new int[4]; new用来产生一个容器实体。
x是数组类型,是一种引用数据类型
java内存结构(处理方式不一样):栈内存,堆内存,…
栈内存:数据使用完毕,会自动释放
堆内存:new出来的实体都在里面,数组实体或对象
0x0079为实体的起始地址,把地址赋给x,是一种引用
堆内存实体都有默认值,如果是int类型,则默认值为0,double ,0.0 ,
Float,0.0f, boolean ,false
垃圾回收机制:
C++当内存中的实体过多的时候,占用过多的内存空间,实体不用,需要清除掉,需要程序员手动的去调用一个功能来清除,如果程序员忘做了,那么这个程序运行越长时间越慢,最后甚至有可能死机。
JAVA对其优化,程序员不用手动清除,只要对象或者实体一变成垃圾,JAVA虚拟机会自动启动垃圾回收机制,将内存中不再使用的实体或者对象清除掉.
栈自动释放,堆垃圾回收。
X=null以后,没有内存垃圾,y还要用.