java第五课基础和代码

3.循环结构(for循环)

3.1需求分析

1+2+3+…+100

活到老,学到老。

跑步圈数 10圈

打印店:100页

page = 1;page++;打印一份

page = 2;page++;打印二份

page++…100; 打印100份;

3.2技术分析

A.循环的三要素:

for(初始化表达式(1);条件表达式(2);修改初始化表达式的值(3)){

​ 循环体(4);

}

B:执行流程

1243243

3.3代码实现

ForDemo

package cn.tedu.day05;
/**

  • for循环的实例

  • @author Administrator
    *
    */
    public class ForDemo {

    public static void main(String[] args) {
    ​ // TODO Auto-generated method stub
    /* //打印10次 我们会成功.
    ​ for (int i = 0; i < 10; i++) {
    ​ System.out.println(“我能成功!”);
    ​ }
    ​ //打印1+2+3+4…50的和
    ​ int sum = 0;
    ​ for (int i = 0; i < 51; i++) {
    ​ sum = sum + i;
    ​ }
    ​ System.out.println(sum);//1275

    *
    * *
    * * *
    * * * *
    * * * * *
    
    第一行:有1个*
    第五行:    5个*
    
    for (int i = 1; i <= 5; i++) {//控制行
    	for (int j = 1; j <= i; j++) {//控制每一行*个数
    		System.out.print("* ");
    	}
    	System.out.println();
    }*/
    //死循环
    /*for(;;){
    	System.out.println("我们很爱学习:学习到深夜。");
    }*/
    //continue break
    /*for (int i = 0; i < 6; i++) {
    	for (int j = 0; j < 5; j++) {
    		System.out.println("i = " + i + "," + "j = "+j);
    	}
    	if (i ==2){
    		break;
    	}
    }*/
    
    for (int i = 0; i < 6; i++) {
    	for (int j = 0; j < 5; j++) {
    		if (j ==2){
    			break;
    		}
    		System.out.println("i = " + i + "," + "j = "+ j);
    	}
    }
    

    //增强型for循环---Person  p---后续说到
    /*for(Person p : args){
    	
    }*/
    //99乘法表 1*1=1 1*2=2
    int sum = 0;
    for (int i = 1; i < 10; i++) {//行
    	for (int j = 1; j <= i; j++) {//列
    		sum = i * j;
    		System.out.print(j + "*" + i + "=" + sum);
    		System.out.print(" ");
    	}
    	System.out.println();
    }
    

    }

}

3.4扩展内容

break和continue的区别

break的关键字可以使用switch-case和循环结构中,用于跳出当前结构。

continue:只能用在循环结构中,用于结束本次循环继续下一次循环。

在java5中引入了一个新的for循环,增强型for循环。

4.循环结构(while/do-while)

4.1需求分析

猜数字游戏:

int num = 250;

guess

循环结构:

循环变量:??? guess

1)system.out.println(“请开始猜”);

int guess = sc.nextInt();

2)guess != num

3)-------1)

1-1000

随机数的产生:

Math.random()----------0.0到.099999999999999…

*1000 -----------------0.0到999.99999…

(int)-----------0到999

+1 ------1到1000

4.2技术分析
while(布尔表达式){
    //循环体
}
//如果是true,则一直循环下去
//先判断后执行,有可能一次都不执行
do{
    循环体;
}while(条件/布尔表达式);
    //无论如何都会执行一次循环体。

新建WhileDemo,写一个1+2+++…+100

package cn.tedu.day05;
/**

  • while循环结构

  • @author Administrator
    *
    */
    public class WhileDemo {

    public static void main(String[] args) {
    int count = 1;
    int sum = 0;
    while(count <= 100){
    ​ sum += count;
    ​ count++;//当count到101跳出循环
    }
    System.out.println(“sum” + sum);//sum = 5050
    }
    }

    package cn.tedu.day05;

    import java.util.Scanner;

    public class GuessDemo {

    public static void main(String[] args) {
    	// TODO Auto-generated method stub
    	//alt+shift+L
    	//new GuessDemo();
    

    /* Scanner scanner = new Scanner(System.in);
    ​ System.out.println(“请开始输入你心中的那个数:”);
    ​ int guess = scanner.nextInt();
    ​ int num = (int) (Math.random()1000 + 1);
    ​ while(guess != num){
    ​ if(guess == 0){
    ​ break;
    ​ }
    ​ if (guess > num) {
    ​ System.out.println(“猜大了”);
    ​ }else{
    ​ guess = scanner.nextInt();
    ​ System.out.println(“猜小了”);
    ​ }
    ​ System.out.println(“继续猜吧”);
    ​ }
    ​ if(guess == num){
    ​ System.out.println(“恭喜你,猜对了!”);
    ​ }else{
    ​ System.out.println(“欢迎你再来挑战”);
    ​ }
    /
    ​ /*
    ​ * 练习:使用do-while写猜数字的游戏
    ​ *
    ​ */
    ​ Scanner scanner = new Scanner(System.in);
    ​ System.out.println(“请输入你心中的那个数字:”);
    ​ int guess = scanner.nextInt();;
    ​ int num = (int) (Math.random()*1000+1);
    ​ do{

    		if(guess == 0)
    			break;
    		if(guess > num){
    			System.out.println("猜大了");
    		}else{
    			System.out.println("猜小了");
    		}
    		System.out.println("猜吧,老铁");
    		guess = scanner.nextInt();
    	}while(guess != num);
    	if(guess == num){
    		System.out.println("恭喜你,猜对了!");
    	}else{
    		System.out.println("欢迎你再次挑战!");
    	}
    	}
    }
    

    作业:

    1.设计一个小游戏:

    我们手里有21个小球,我们让人和机器先后去取,每次人和机器

    只能取1-4个小球,不能多取,也不能不取,谁取到最后一个小球谁就输。

    现在请你编写一个程序,要求我们先取,机器后取,机器赢的概率最大,

    立于不败之地。

5.数组

5.1
5.2技术分析

A:概念:一种数据类型(引用数据类型),相同数据类型元素的集合。

B:定义

int[] arr = new int[6];

C:初始化:

  • int[] arr = new int[6];//0.0.0
  • int[] arr = {1,2,3,34,56};
  • int[] arr = new int[]{1,2,34,56};

int[] arr;

arr = {1,23,34};//不正确。只能是声明的时候进行初始化

arr = new int[]{1,23,45,7};//正确的

D:数组的访问

  • 得到数组的长度
  • 得到数组的每一个元素
5.3代码

package cn.tedu.day05;
/*

  • 数组的案例
    */
    public class ArrayDemo {

    public static void main(String[] args) {
    ​ // TODO Auto-generated method stub
    //1.数组的定义
    ​ int[] arr = new int[6];

    //2.数组的初始化
    int[] arr1 = new int[6];
    int[] arr2 = {1,2,34};
    int[] arr3 = new int[]{2,5,6};
    
    int[] arr4;
    //arr4 = {2,34,5};//编译不通过
    arr4 = new int[]{2,4,5};//正确
    
    //3.数组的访问
    //长度
    System.out.println(arr1.length);//6
    arr[0] = 666;
    arr[1] = 22;
    arr[2] = 3;
    arr[3] = 6;
    arr[4] = 5;
    arr[5] = 55;
    //arr[6] = 77;//数组下标越界---第一个异常
    // java.lang.ArrayIndexOutOfBoundsException: 6
    System.out.println(arr[5]);
    
    //4.数组的遍历
    int[] res = new int[5];
    for (int i = 0; i < res.length; i++) {
    	res[i] = (int) (Math.random()*100);
    }
    for (int i = 0; i < res.length; i++) {
    	System.out.println(res[i]);
    }
    


    }
    

    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值