java之3天,循环,函数,数组

1.循环结构 while do while for

public static void main(String [] args){

/*
打印奇数
*/
int x=1;
while(x<=10){

System.out.println("x="+x);
x+=2; // x++; X++;
}

do{
System.out.println("x"):
}while(true);

/*
while: 先判断条件,只有条件满足后才执行循环体
do while: 先执行循环体,然后判断条件,条件满足,在继续执行循环体,
简单一句话, do while 无论条件是否满足,循环体至少执行一次.
*/

//奇怪的代码 呵呵
int y=1;
while(y<3); //注意这里多了一个 "分号"
{
System.out.println("y="+y);
y++;
}

//此循环 会让程序 一直判断 y<3吗? 小于 然后 后面没有循环体,然后继续断 y<3吗? ....

for(int x=0;x<3;x++){
System.out.println("x="+x);
}
/*
变量x的作用范围 只在 for{ 内才有效}
for 和while 的区别在于 初始化变量的的时候 变量的作用域不一样
while的增量 后还能用.
*/


for的几种变形

public static void main(String [] args){

for(System.out.println("a"),System.out.println("b"),System.out.println("c"))
{
System.out.println("d");
} //编译报错
int x=1;
for(System.out.println("a"),x<3,System.out.println("c"))
{
System.out.println("d");
x++;
} //打印出 adcdc

多表达式的写法
for(int x=0,y=3;x<3 && y>1;x++,y--){
System.out.println("x="+x);
System.out.println("y="+y);
}
x=0 y=3
x=1 y=2

//外部 增量
int z=0;
for( ; z<3;){
z++;
}

// for 的最简单无限循环表现形式
for( ; ; ){ }

//while 的最简单无限循环表现形式
while(true){}

/*
循环一定要明确那些语句参与循环,那些语句不参与循环
*/

/*
累加思想 通过循环信息的进行
计数器思想 通过一个变量来记录数据的编号 当然也需要通过循环来实现
*/

}


//语句嵌套 循环嵌套

/*
/打印 三角形
*****
****
***
**
*

*/

for(int x=0;x<5;x++){

for(int y=x;y<5;y++){
System.out.print("*):
}
System.out.println():
}

// 9 9 乘法表
public static void main(String[] args) {
// TODO Auto-generated method stub
for(int x=0;x<=9;x++){
for(int y=1;y<=x;y++){
System.out.print(y+"*"+x+"="+(x*y)+"\t");
}
System.out.println();
}
}



其他流程控制语句 break 跳出(switch loop) continue (loop) 继续


public static void main(String[] args){

: 标号 只能用于循环上.

w:for(int x=0;x<3;x++){
q:for(int y=0;y<4;y++){
System.out.println("x="+x);
break w; //跳出外层循环
}
}


w:for(int x=0;x<3;x++){

q:for(int y =0; y<x;y++){
System.out.println("x="+x);
continue w;
}
}

/*
记住:
1.break continue 语句的作用范围
2.break; 和continue单独存在的时候,下面可以有任何语句,但是都不执行
*/

//打印等腰三角形
for(int x=0;x<5;x++){
for(int y=x+1;y<5;y++){
System.out.print(" ");
}
for(int z=0;z<=x;z++){
System.out.print("* ");
}
System.out.println();
}

}



函数

1.函数的定义 : 就是定义在类中具有特定功能的一段独立的小程序,也叫方法.

格式:
修饰符 返回值类型 函数名 (参数类型 形式参数1,参数类型 形式参数2,....)
{
执行的语句
return 返回值;

}


2.函数的特点 :1.将功能代码进行封装
       2.对功能进行复用,
       3.函数只有被调用才会被执行,
       4.提高了代码的复用性,
       5,如果函数没有具体的返回值的时候 返回值类型为 void ,此时 return 可以省略不写.
       6.函数内部只能调用函数,不能定义函数.
       7.如果一个函数没有返回值 ,就不能放在 输出语句中调用


3.函数的应用 : 1.明确要定义的功能最后的结果是什么?
2. 明确咋定义功能的国臣各种,是否需要未知内容参与运算
    

4.函数的重载:overload
1.在同一个类中,允许存在一个以上的同名函数,只要他的参数个数或者参数类型,参数位置不同即可.
2.与返回值无关,只看参数列表
3.方便阅读,优化程序设计
4.参数是有顺序的




数组

1.数组的定义 : 同一种类型数据的集合, 其实数组就是一个容器
可以自动给数组中的元素从0开始编号,方便元素操作

2.数组的内存分配和特点:
1. int[]x 这个x 在 栈内存中 new int[3] 这个就在 堆内存中
2. 默认的元素都有值.
3. 每个 元素都有 内存地址值
4. 只有引用数据类型才能用 "null" 这个常量


3.数组操作常见的问题

4.数组中常见的操作

5.数组中的数组



JVM使用的内存结构

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

2. JVM 在启动的时候 划分了 5片不同的区域
1.栈内存
2.堆内存
3.方法区
4.本地方法区
5.寄存器

3.栈内存: 用户存储局部变量,当数据使用完,所占空间会自动释放

4.堆内存:
1.数组和对象, 通过new 建立的实例都放在堆内存中
2.每个实体都有内存地址值
3.是体重的变量都有默认的初始化值
4.实体不在被使用,会在不确定的时间内被垃圾回收器回收




[img]http://dl.iteye.com/upload/attachment/0081/8859/e0d30a24-3b1a-3fd8-a473-7ec2ecd15d30.png[/img]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值