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.实体不在被使用,会在不确定的时间内被垃圾回收器回收




java之3天,循环,函数,数组_第1张图片



你可能感兴趣的:(java,函数,数组,循环)