当前位置: 首页 > news >正文

健身网站的建设方案重庆百度快照优化排名

健身网站的建设方案,重庆百度快照优化排名,网店美工设计,电商营销Java零基础入门4.0Java系列第四章1. 顺序结构2. if语句3. switch 语句3.1 default的位置和省略3.2 case 穿透3.3 switch 新特性 (jdk12开始)4. for 循环5. while 循环6.do...while 循环7. 无限循环8. 跳转控制语句9. 练习9.1 逢七过9.2 平方根9.3 求质数…

Java零基础入门4.0

  • Java系列第四章
    • 1. 顺序结构
    • 2. if语句
    • 3. switch 语句
      • 3.1 default的位置和省略
      • 3.2 case 穿透
      • 3.3 switch 新特性 (jdk12开始)
    • 4. for 循环
    • 5. while 循环
    • 6.do...while 循环
    • 7. 无限循环
    • 8. 跳转控制语句
    • 9. 练习
      • 9.1 逢七过
      • 9.2 平方根
      • 9.3 求质数
    • 10. 随机数
    • 11. 数组
      • 11.1 数组的地址
      • 11.2 数组索引
      • 11.3 数组的遍历
      • 11.4 数组的动态初始化
    • 12. 数组练习
      • 12.1 求最值
      • 12.2 遍历数组求和
      • 12.3 交换数据
      • 12.4 打乱数据
    • 13. 数组的内存图

Java系列第四章

1. 顺序结构

在这里插入图片描述

2. if语句

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3. switch 语句

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

3.1 default的位置和省略

  • 1.位置 : defaule不一定是写在最下面的,我们可以写在任意位置。只不过习惯会写在最下面
  • 2.省略: defaule可以省略,语法不会有问题,但是不建议省略。

3.2 case 穿透

就是语句体中没有写break导致的。
执行流程:

  1. 首先还是会拿着小括号中表达式的值跟下面每一个case进行匹配。
  2. 如果匹配上了,就会执行对应的语句体,如果此时发现了break,那么结束整个switch语句。
  3. 如果没有发现break,那么程序会继续执行下一个case的语句体,一直遇到break或者右大括号为止。
  4. 如果多个case的语句体重复了,那么我们考虑利用case穿透去简化代码。

3.3 switch 新特性 (jdk12开始)

支持箭头表达式返回

import org.junit.Test;enum Gender {MALE, FEMALE, UNKNOWN;
}public class TestX {private Gender gender = Gender.MALE;@Testpublic void show() {switch (gender) {case MALE:System.out.println("男");break;case FEMALE:System.out.println("女");break;default:throw new IllegalStateException(gender.toString());break;}}
}

Java 新特性 的 switch 表达式使用箭头表达时,不需要在每一个 case 后都加上 break。

	@Testpublic void show() {switch (gender) {case MALE -> System.out.println("男");case FEMALE -> System.out.println("女");default -> throw new IllegalStateException(gender.toString());}

4. for 循环

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

package com.itheima.demo1;import java.util.Scanner;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//分析://1.键盘录入两个数字Scanner sc = new Scanner(System.in);System.out.print("请录入一个数字表示范围的开始:");int start = sc.nextInt();System.out.println("请录入一个数字表示范围的结束:");int end = sc.nextInt();// 统计变量//简单逻辑,统计符合要求的数字个数int count = 0;//2.利时循环获取这个范围中的每一个数字for (int i = start; i <= end; i++) {//3.对每一个数字进行判断,统计有多少个满足要求的数字if (i % 3 == 0 && i % 5 == 0) {count++;}}System.out.println(count);}
}

在这里插入图片描述

5. while 循环

在这里插入图片描述

在这里插入图片描述
for 和 while 的对比
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//分析://1.定义数字int x = 123321;//定义一个临时变量用于记录×原来的值,用于最后进行比较int temp = x;//记录倒过来之后的结果int num = 0;//2.利用循环开始while (x != 0) {//从右往左获取每一位数字int ge = x % 10;//修改下x记录的值x= x/10;//把当前获取到的数字拼接到最右边num = num * 10 + ge;}System.out.println(num);System.out.println(x);System.out.println(num == temp);}
}

在这里插入图片描述

6.do…while 循环

在这里插入图片描述

7. 无限循环

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {// for 格式的无限循环for(;;){System.out.println("wdnmd");}}
}

在这里插入图片描述
可以按红色的方块暂停

8. 跳转控制语句

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {for (int i = 0; i < 5; i++) {if(i==3){continue;}System.out.println("wdnmd"+i+"fk");}}
}

在这里插入图片描述
2.

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {for (int i = 0; i < 5; i++) {if(i==3){break;}System.out.println("wdnmd"+i+"fk");}}
}

在这里插入图片描述

9. 练习

9.1 逢七过

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {for (int i = 1; i <=100; i++) {if(i%10==7||i/10%10==7||i%7==0){System.out.println("过");continue;}System.out.println(i);}}
}

9.2 平方根

在这里插入图片描述

package com.itheima.demo1;import java.util.Scanner;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数:");int number = sc.nextInt();for (int i = 1; i < number; i++) {if (i * i == number) {System.out.println(i + "就是" + number + "的平方根");break;} else if (i * i > number) {System.out.println((i - 1) + "就是" + number + "平方根的整数部分");break;}}}
}

在这里插入图片描述

9.3 求质数

  1. 标记法
package com.itheima.demo1;import java.util.Scanner;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {Scanner sc = new Scanner(System.in);System.out.println("请输入一个整数:");int number = sc.nextInt();//定义一个变量,表示标记// 标记着number是否为一个质数// true:是一个质数//false :不是一个质数boolean flag = true;for (int i = 2; i < number; i++) {// i 表示依次表示这个范围之内的每一个数字//看number是否能被i整除就可以了if(number%i ==0){flag = false;break;}}//只有当这个循环结束了,表示这个范围之内所有的数字都判断完毕了// 此时才能断定number是一个质数if(flag){System.out.println(number+"是一个质数");}else{System.out.println(number+"不是一个质数");}}
}
  1. 平方根法
    在这里插入图片描述

10. 随机数

在这里插入图片描述

package com.itheima.demo1;import java.util.Random;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//先获取一个随机数。// 范围:2~10//2.创建对象Random r = new Random();//3.生成随机数//判断技巧://在小括号中,书写的是生成随机数的范围//这个范围一定是从e开始的。//到这个数-1结束//口诀:包头不包尾,包左不包右for(int i = 0;i<100;i++){int number = r.nextInt(10)+5;//0+5~9+5 //5~14System.out.println(number);}}
}

练习:

package com.itheima.demo1;import java.util.Random;
import java.util.Scanner;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//需求:程序自动生成一个1-100之间的随机数字,使用程序实现猜出这个数宇是多少?// 扩展小需求:加一个保底机制,3次猜不中,直接提示猜中了。//注意点://1.生成随机数的代码int number = r.nextInt(100) +1;// 不能写在循环的里面的,否则每一次都会产生一个新的随机数//2.抽奖机制//用点券去抽水晶// 保底360次//计数器//用来统计当前已经猜了多少次。int count = 0;//分析// 1.生成一个1-100之间的随机数字Random r = new Random();int number = r.nextInt(100) + 1;System.out.println(number);// 2. 猜这个数字是多少Scanner sc = new Scanner(System.in);while (true) {System.out.println("请输入你要猜的数字:");int gussNumber = sc.nextInt();//3 .判断两个数字给出不同的提示// 猜的数字大了,提示大了//猜的数字小了,提示小了//猜的数字一样,提示猜中了count++;if(count == 3){System.out.println("猜中了");break;}if(gussNumber>number){System.out.println("大了");}else if(gussNumber<number){System.out.println("小了");}else{System.out.println("猜中了");break;}}}
}

在这里插入图片描述

11. 数组

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

11.1 数组的地址

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {double[] arr6={1.93,1.75,1.73,181};System.out.println(arr6);// [D@4554617c 地址值// 扩展://解释一下地址值的格式含义[D@4554617c//[﹔表示当前是一个数组//D:表示当前数组里面的元素都是double类型的//@:表示一个间隔符号。(固定格式)// 4554617c:才是数组真正的地址值,(十六进制)// 平时我们习惯性的会把这个整体叫做数组的地址值。}
}

11.2 数组索引

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//利用索引对数组中的元素进行访问1/1.获取数组里面的元素//格式://数组名[索引]int[]arr = {1,2,3,4,5};//获取数组中的第一个元素//其实就是e索引上对应的元素l / int number = arr[e];// system.out.println( number);//1//获取数组中1索引上对应的数据,并直接打印出来/ / system.out.println(arr[1]);//2//2.把数据存储到数组当中//格式:数组名[索引]=具体数据/变量;//细节:一旦覆盖之后,原来的数据就不存在了。arr[0] = 100;System.out.println(arr[0]);//100}
}

11.3 数组的遍历

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//利用循环改进代码//开始条件: 0//结束条件:数组的长度-1(最大索引)//在Java当中,关于数组的一个长度属性,length// 调用方式:数组名.length//扩展://自动的快速生成数组的遍历方式/ lidea提供的//数组名.foriint[] arr = {1,2,3,4,5};for(int i=0;i<arr.length;i++){System.out.println(arr[i]);}}
}

练习:
1.
在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//分析://1.定义一个数组存储1,2,3,4,5,6,7,8,9,10int [] arr={1,2,3,4,5,6,7,8,9,10};int count =0;for (int i = 0; i < arr.length; i++) {//i表示数组里面的每一个索引// arr[i]表示数组里面的每一个元素//3.判断当前的元素是否为3的倍数,如果是那么统计变量就需要自增一次。if(arr[i]%3==0){count++;}}System.out.println("数组中能被3整除的数字有"+count+"个");}
}

在这里插入图片描述
2.
在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//分析://1.定义一个数组存储1,2,3,4,5,6,7,8,9,10int [] arr={1,2,3,4,5,6,7,8,9,10};for (int i = 0; i < arr.length; i++) {//i表示数组里面的每一个索引// arr[i]表示数组里面的每一个元素//3.判断当前的元素是否为3的倍数,如果是那么统计变量就需要自增一次。if(arr[i]%2==0){// 偶数变二分之一arr[i]=arr[i]/2;}else{arr[i]=arr[i]*2;}}// 遍历数组// 一个循环尽量只做一件事情for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]);}}
}

在这里插入图片描述

11.4 数组的动态初始化

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//格式://数据类型[门]数组名= new数据类型[数组的长度];//在创建的时候,由我们自己指定数组的长度,由虚拟机给出默认的初始化值String[] arr = new String[50];//添加学生arr[0] = "zhangsan";arr[1] = "lisi";System.out.println(arr[0]);//zhangsanSystem.out.println(arr[1]);//lisiSystem.out.println(arr[2]);//打印出来的是默认初始化值null//数组默认初始化值的规律//整数类型:默认初始化值0// 小数类型:默认初始化值0.0//字符类型:默认初始化值"/u0000" ->空格//布尔类型:默认初始化值 false//引用数据类型:默认初始化值nullint[] arr2=new int[3];System.out.println(arr2[0]);//0System.out.println(arr2[1]);//0System.out.println(arr2[2]);//0}
}

在这里插入图片描述
数组常见问题
当访问了数组中不存在的索引,就会引发索引越界异常。

在这里插入图片描述

12. 数组练习

12.1 求最值

在这里插入图片描述

在这里插入图片描述

package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//扩展问题://1.根据求最大值的思路,自己改写一下求最小智//2.为什么max要记录为arr[0],默认值不能为0吗?// 不能写0// max的初始化值一定要是数组中的值。// 3.循环中开始条件一定是0吗?//循环的开始条件如果为0,那么第一次循环的时候是自己跟自己比了一下,对结果没有任何影响,但是效率偏低// 为了提高效率,减少一次循环的次数,循环开始条件可以写1.//1. 定义数组用来储存5个值int []arr={33,5,22,44,55};//2. 定义一个变量用来储存最大值//临时认为0索引的数据是最大的int max=arr[0];//3. 循环获取素组的每一个元素//拿每一个元素跟max进行比较for (int i = 0; i < arr.length; i++) {//i 索引 arr[i]元素if(arr[i]>max){max=arr[i];}}// 4. 当循环结束之后,max记录的就是数组中的最大值System.out.println(max);}
}

12.2 遍历数组求和

在这里插入图片描述

package com.itheima.demo1;import java.util.Random;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {// 分析://1.定义数组//动态初始化int[] arr = new int[10];//2.把随机数存入到数组当中Random r = new Random();for (int i = 0; i < arr.length; i++) {// 每循环一次,就会生成一个新的随机数int number = r.nextInt(100) + 1;// 相当于new Random().nextInt(100) 通过netInt方法的值输到随机数中//从0~99随机,要到100就在后面+1// 把生成的随机数添加到数组当中// 数组名[索引]=数据;arr[i] = number;}//1.求出所有数据的和int sum=0;for (int i = 0; i < arr.length; i++) {sum=sum+arr[i];}System.out.println("所有数据的和:"+sum);//2.求出所有数据的平均数int avg = sum/arr.length;System.out.println("所有数据的平均数:"+avg);//3.统计有多少个数据比平均值小int count=0;for (int i = 0; i < arr.length; i++) {if(arr[i]<avg){count++;}}// 当循环结束之后,就表示我已经找到了所有的比平均值小的数据System.out.println("在数据中,一共有:"+count+"个数据比平均数小");// 遍历数组,验证答案for (int i = 0; i < arr.length; i++) {System.out.println(arr[i]+" ");}}
}

在这里插入图片描述

12.3 交换数据

  1. 定义交换
package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {int a=10;int b=20;//把变量b的值,赋值给了变量a,那么变量a原来的值被覆盖了int temp =a;// 把变量b的值,赋值给了a,那么变量a原来记录的值就被覆盖了a=b;// 就是把变量a原来的值,赋值给了变量bb=temp;System.out.println(a);//20System.out.println(b);//10}
}
  1. 遍历数组法
package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {// 1.定义一个数组int[] arr ={1,2,3,4,5};//2.将数组中0索引和最大索引引出的值进行交换
`在这里插入代码片`        int temp = arr[0];arr[0] = arr[4];arr[4]=temp;//3.遍历数组for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}
}
package com.itheima.demo1;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//1.定义数组存储数据int[] arr={1,2,3,4,5};//2.利用循环去交换数据for(int i=0,j=arr.length-1;i<j;i++,j--){//交换变量i和变量j指向的元素int temp = arr[i];arr[i]=arr[j];arr[j]=temp;}// 当循环结束之后,那么数组中的数据就实现了头尾交换for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+" ");}}
}

12.4 打乱数据

在这里插入图片描述

package com.itheima.demo1;import java.util.Random;public class ArithmeticoperatorDemo1 {public static void main(String[] args) {//难点://如何获取数组中的随机索引//1. 定义数组存储1~5int[] arr={1,2,3,4,5};// 2. 循环遍历数组,从0索引开始打乱数据的顺序Random r =new Random();for(int i=0;i<arr.length;i++){// 生成一个随机索引int randomIndex = r.nextInt(arr.length);//拿着随机索引指向的元素 跟 i 指向的元素进行交换int temp =arr[i];arr[i]=arr[randomIndex];arr[randomIndex]=temp;}// 当循环结束之后,那么数组中所有的数据已经打乱顺序了for (int i = 0; i < arr.length; i++) {System.out.print(arr[i]+"");}}
}

13. 数组的内存图

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.hrbkazy.com/news/53797.html

相关文章:

  • 网站安全建设杀毒软件网上营销培训课程
  • 招聘网站怎么做吸引人如何制作一个宣传网页
  • wordpress 使用 相对路径长春关键词优化公司
  • 一个女的让我和她做优惠网站百度ai搜索引擎
  • 湖南麟辉建设集团有限公司网站网络推广有哪些渠道
  • 做网站找个人还是公司网络营销swot分析
  • 做wish如何利用数据网站网站的设计流程
  • wordpress divi南京百度seo代理
  • 欧美风格企业网站杭州seo网站推广
  • 泰安集团网站建设费用今日郑州头条最新新闻
  • 内蒙网站开发网络seo是什么
  • 互助网站开发外贸推广引流
  • 河北网站制作公司报价百度营销
  • 国内b2b网站a片天津关键词优化网站
  • 哈尔滨网站改版sem电子扫描显微镜
  • c苏宁网站开发百度搜索引擎优化方案
  • 中山模板建站软件推广的方式有哪些
  • 做源码网站赚钱吗网络营销服务的内容
  • 免费做网站tk济南专业做网站
  • 怎么做符合seo的网站中文域名的网站
  • 仙桃网站制作网站设计买外链
  • 辽宁建设工程信息网老网站深圳网络营销推广方案
  • 怎么做售房网站微信营销的成功案例
  • 企业形象宣传片搜索引擎优化的概念
  • 猪八戒做网站要多少钱百度app下载安装
  • 中国建设银行英文网站怎么seo关键词优化排名
  • 做音乐网站多少钱国外网站排名前十
  • 南昌营销型网站建设厦门百度代理公司
  • 品牌网站建设e小蝌蚪成都专门做网站的公司
  • wordpress 调用评论数量青岛seo百科