Java基础学习(3)
创始人
2024-06-02 00:32:09
0

Java基础学习

  • 一 判断和循环语句
    • 1.1 顺序结构
    • 1.2 分支结构
      • 1.2.1 if语句
    • **第一种语法格式:** ![在这里插入图片描述](https://img.pic99.top/cnyincai/202406/6f853212b315505.png) **执行流程:**
    • **第二种语法结构:** ![在这里插入图片描述](https://img.pic99.top/cnyincai/202406/8416af69a025417.png) **执行流程:**
      • 1.2.2 switch
    • 在这里插入图片描述 **执行流程:**
      • 1.2.3 for循环
    • 在这里插入图片描述 **执行流程**
      • 1.2.4 while循环语句
      • 回文函数
      • 1.2.5 do.....while循环
  • 二 数组
    • 2.1 什么是数组
  • 注意:
    • 2.2 数组的定义
    • 2.3 数组的初始化
      • 动态初始化 与 静态初始化区别
    • 2.4 数组的访问
    • 数组遍历
  • 三 Java内存分配
    • 数组内存图
    • 两个数组指向同一个空间

一 判断和循环语句

1.1 顺序结构

顺序结构是Java默认的执行流程,按照代码顺序,从上到小依次进行

1.2 分支结构

1.2.1 if语句

第一种语法格式:
在这里插入图片描述
执行流程:

  • 首先计算关系表达式的值
  • 如果关系表达式的值为true就执行语句体
  • 如果关系表达式的值为false就不执行语句体
  • 继续执行后面的其他语句

第二种语法结构:
在这里插入图片描述
执行流程:

  • 首先计算关系表达式的值
  • 如果关系表达式的值为true就执行语句体1
  • 如果关系表达式的值为false就执行语句体2
  • 继续执行后买你的代码

1.2.2 switch

在这里插入图片描述
执行流程:

  • 首先计算表达式的值
  • 依次和case后面的值进行比较,如果有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束
  • 如果所有的case后面的值和表达式的值都不匹配,就会执行default里面的语句体,然后结束整个switch语句

注意

  • 表达式:(将要匹配的值) 取值为byte、short、int、char。JDK5以后可以是枚举,JDK7以后可以是String。
  • case:后面跟的是要和表达式进行比较的值 (被匹配的值)
  • break:表示中断,结束的意思,用来结束switch语句
  • default:表示所有情况都不匹配的时候,就执行该处的内容和if语句的else相似。
  • case后面的值只能是字面量,不能是变量
  • case给出的值不允许重复

如果没有加上break,就会产生穿透,会继续向下依次进行表达式,直到遇到break

1.2.3 for循环

在这里插入图片描述
执行流程

    1. 执行初始化语句
    1. 执行条件判断语句,看其结果是true还是false
      如果是false,循环结束
      如果是true,执行循环体语句
    1. 执行条件控制语句
    1. 回到 2 继续执行条件判断语句

1.2.4 while循环语句

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

回文函数

  • 需求:给你一个整数X。
    如果x是一个回文整数,打印 true ,否则,返回 false
  • 解释:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数
  • 例如,121 是回文,而123 不是
import java.util.Scanner;public class exerciseXunhuan {/*需求:给你一个整数X。
如果x是一个回文整数,打印 true ,否则,返回 false
解释:回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数
例如,121 是回文,而123 不是* */public static void main(String[]args){System.out.println("请输入一个整数");//获取到输入的值Scanner sc = new Scanner(System.in);int num = sc.nextInt();//设置一个变量去保存num初始值,便于最后的比较int temp = num;//定义一个变量去接收返回的逆序数int x= 0;while (num != 0){int ge = num%10;//改变每一次进入当前循环的值,使得每次进入都获取到原来数的前一位的上一位数num /= 10;//逆序数x= x*10 + ge;}System.out.println(x);if(x==temp){System.out.println(true);}else{System.out.println(false);}}
}

1.2.5 do…while循环

在这里插入图片描述
先执行前面的代码,后判断,如果为假,就跳出循环,如果为真,就继续循环

二 数组

2.1 什么是数组

数组指的是一种容器,可以用来存储同种数据类型的多个值

注意:

建议:容器类型与存储类型一致
容器在存储的时候会进行隐式转换

2.2 数组的定义

在这里插入图片描述

2.3 数组的初始化

  1. 静态初始化:

就是在内存中,为数组开辟空间,并将数据存入容器中的过程

第一种:格式: 数据类型 数组名 = new 数据类型 [] {元素1,元素2,元素3......};

int arr = new int [] {1,2,6,3};

(建议)
第二种:格式: 数据类型 数组名 [] = {元素1 , 元素2,..........};

int arr [] = {1,2,56,2,5};
  1. 数组动态初始化
    格式: 数据类型 数组名 = new 数据类型 [数组长度]
int arr = new int [5];

动态初始化 与 静态初始化区别

动态初始化:手动指定数组长度,由系统给出默认初始化值
只明确元素个数,不明确具体数值,推荐使用动态初始化

静态初始化:手动指定数组元素,系统会根据元素个数,计算出数组的长度
需求中已经明确了要操作的具体数据,直接静态初始化即可。

2.4 数组的访问

格式: 数组名 [索引];

索引:也叫下标,角标,是从0开始逐渐递增的,连续不断的
在这里插入图片描述

数组遍历

public class busssss {public static  void  main(String[]args){int arr [] = {1,4,6,2,52,5,6};for(int i = 0 ; iSystem.out.println(arr[i]);}}
}

三 Java内存分配

在这里插入图片描述
注意:
从JDK8开始,取消方法区,新增元空间。把原来方法区的多种功能进行拆分有的功能放到了堆中,有的功能放到了元空间中。

  1. 栈区:方法运行时使用的内存,比如main方法运行,进入方法栈中执行
  2. 堆区:存储对象或者数组 , new来创建的,都存储在堆内存
  3. 方法区:存储可以运行的class文件
  4. 本地方法栈:JVM在使用操作系统功能的时候使用,和我们开发没有用
  5. **寄存器:**给CPU用的,和开发无关

在这里插入图片描述

数组内存图

在这里插入图片描述

两个数组指向同一个空间

因为他们指向的都是同一个地址空间,所以当其中一个发生了改变,另外一个也会发生改变

在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...