2020-07-31

第五章JAVA数组

1,数组是什么?为什么使用数组?
数组可以存放多个值。因为一个变量,只能保存一个数据
数组用来将相同数据类型存储在存储单元里,数组的所有元素必须属于相同的数据类型
2,什么是数组
数组和变量差不多,都是存放数据的,不同的是,变量只能保存一条数据,而数组可以保存多条数据,前提这个多条数据必须是同一类型的
数组是引用数据类型,除了八大基本数据类型,其他的都是引用的
3.如何定义数组?
数组类型[]数组名;
如果定义好数组以后,必须要给数组进行初始化
数组是一个引用数据类型
4.数组的初始化分为两种:
①动态初始化:指定数组的长度,一旦长度指定,就是数组中只能存放多少数据
两种格式:
第一种:
数组类型[]数组名=new 数组类型[数组长度];
第二种:
数组类型[]数组名;
数组名=new 数组类型[数组长度];
怎么给数组进行赋值?
通过数组的下标,数组的下标从0开始
②静态初始化:不是指定数组长度,而是直接在初始化数组的同时给数组赋值
两种格式:
第一种:
数组类型[]数组名=new 数组类型[]{数据1,数据2……};
第二种:
数组类型[]数组名;
数组名=new 数组类型[]{数据1,数据2……};
还有一种最简单的方式,数组类型[]数组名={数据1,数据2……};
5.获取数组长度
数组名.length,数组的长度一旦定义,不可改变
6.数组中常见的几种异常
①数组越界异常:ArrayIndexOutBoundsException
②空指针异常:
NullPointerException
7.遍历数组两种方式:
①使用for循环,i代表数组的下标
for(int i=0;i<array.length;i++){}
②foreach(for循环的增强版)
for(定义变量接收数组的每一个元素值:要遍历的数组名)
for(int a:array){syso(a)}
8.数组分类
①基本数据类型的数组
byte short int long double float char boolean
0 0 0 0 0.0 0.0 空格 false
②引用数据类型的数组
String 接口 自己定义的类…
引用数据类型的默认值为null
9.java中的内存是怎么进行分配的?
内存的申请和释放都是jvm进行管理的,java程序要运行,jvm会自动的向电脑申请一块内存,把这块内存分为五部分
①栈( Stack) :主要存放局部变量
②堆(Heap):凡是new出来的东西都在堆里面,堆中的数据都有默认原则
③方法区(MethodArea):存放的是与.class文件相关的信息
④本地方法区(NativeMethodArea):与操作系统有关
⑤寄存器( Register) ::与cpu有关.
10.冒泡排序(重点)
核心思想:数组中的元素两两比较
口诀(升序)
n个数字来排队
两两相比小靠前
外层循环n-1
内存循环n-1-i
//从小到大
int[] array={};
//外层循环控制趟数
for(int i=0;i<array.length-1;i++){
//内层控制次数
for(int j=0;j<array.length-i-1;j++){
//比较从大到小用< 小到大用>
if(array[j]<array[j+1]){
int temp=array[j];
array[j]=array[j+1]
array[j+1]=temp;
}
}
}
选择排序(了解):效率较低
11.二维数组:数组中的数组
①声明二维数组:
数据类型[][] 数组名;
第一个中括号:二维数组中有几个一维数组 行
第二个中括号:每个一维数组中有多少元素 列
12.初始化二维数组
第一种动态初始化
int[][] array=new int[5][7];
array[0][0]=10;
int [][] arr =new int[3][];//二位数组中有3个一维数组。
int[][] arr = new int[][3];//非法
第二种静态初始化
int[][] array1=new int[][]{数据集合1,数据集合2}
简写
int [][] array2={ };
获取二维数组的长度:.length
13.遍历二维数组
外层循环控制行(每一个一维数组)
for(int i=0;i<array.length;i++){
内层循环控制的是列
for(int j=0;j<array[i].length;j++){
syso array[i][j]
}
}

  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以后每2周左右给知识星球的⽤户发布⼀次 WPJAM 所有插件的更新, WPJAM Basic 和微信机器⼈⾼级版是和 WordPress 官放插件站同步更新的,其他插件只有知识星球或者其他⼩程序付费⽤户可以享受。 ⽬录: wpjam-basic WPJAM 所有插件基础, WPJAM Basic 除了能够优化你的 WordPress ,也是 WordPress 果酱团队进⾏WordPress ⼆次开发的基础。 ⽬录: weixin-robot-advanced 连接公众号和 WordPress 博客,匹配⽤户发送信息,匹配相关的⽂章,并⾃动回复⽤户。 ⽬录: wpjam-collection 1. 给媒体创建个分类「图⽚集 | collection」 2. 图⽚分类限制为⼆级 3. 取消图⽚编辑⼊⼝ 4. 附件⻚⾯直接图⽚链接。 ⽬录: wpjam-taxonomy 层式管理分类和分类拖动排序的 WordPress 插件。 ⽬录: wpjam-user ⽀持⾃定义头像,屏蔽个⼈设置,屏蔽姓名设置,隐藏登录名,限制登陆失败次数,防⽌密码被暴⼒破解等 功能。 ⽬录: wpjam-content-template WordPress 内容模板,通过 shortcode 在内容中插⼊⼀段共⽤的内容模板,并且⽀持表格。 ⽬录: wpjam-comment 1.评论点赞, 2.评论置顶, 3.评论点赞排序。 ⽬录: wpjam-platform-hide 设置⽂章在列表⻚不显示,并且可以根据不同平台进⾏设置 ⽬录: wpjam-series 设置⽂章专题,并在⽂章末尾显示⼀个⽂章专题列表。 ⽬录: wpjam-option 查看所有⾮ WordPress 系统⾃动⽣成的站点选项,如果你觉得某个选项没有⽤了,可以直接删除它。 ⽬录: wpjam-topic WordPress 后台论坛,⽀持创建帖⼦,分组,消息。 ⽬录: wpjam-configurator 全⾃动 WordPress 配置器,⽀持⾃定义⽂章类型,⾃定义字段,⾃定义分类,分类选项,全局选项。。 ⽬录: wpjam-hashtag ⽂章中插⼊ #话题#,如果是标签或者分类,则⾃动转换成标签或分类链接,否则跳转到搜索链接。 ⽬录: wpjam-metadata 可视化管理 WordPress Meta 数据。 ⽬录: weapp 微信⼩程序 WordPress 基础插件,包含基础类库和管理。 ⽬录: weixin-group-qrcode 微信群⼆维码轮询显示⼯具,每个群加够⼤概100⼈之后,换下⼀个群⼆维码。 ⽬录: wpjam-grabmp ⼀键抓取公众号⽂章到 WordPress 博客,并且突破微信图⽚防盗链
提供的源码资源涵盖了Java应用等多个领域,每个领域都包含了丰富的实例和项目。这些源码都是基于各自平台的最新技术和标准编写,确保了在对应环境下能够无缝运行。同时,源码中配备了详细的注释和文档,帮助用户快速理解代码结构和实现逻辑。 适用人群: 适合毕业设计、课程设计作业。这些源码资源特别适合大学生群体。无论你是计算机相关专业的学生,还是对其他领域编程感兴趣的学生,这些资源都能为你提供宝贵的学习和实践机会。通过学习和运行这些源码,你可以掌握各平台开发的基础知识,提升编程能力和项目实战经验。 使用场景及目标: 在学习阶段,你可以利用这些源码资源进行课程实践、课外项目或毕业设计。通过分析和运行源码,你将深入了解各平台开发的技术细节和最佳实践,逐步培养起自己的项目开发和问题解决能力。此外,在求职或创业过程中,具备跨平台开发能力的大学生将更具竞争力。 其他说明: 为了确保源码资源的可运行性和易用性,特别注意了以下几点:首先,每份源码都提供了详细的运行环境和依赖说明,确保用户能够轻松搭建起开发环境;其次,源码中的注释和文档都非常完善,方便用户快速上手和理解代码;最后,我会定期更新这些源码资源,以适应各平台技术的最新发展和市场需求。 所有源码均经过严格测试,可以直接运行,可以放心下载使用。有任何使用问题欢迎随时与博主沟通,第一时间进行解答!
USE MyDatabase; -- 创建表1 CREATE TABLE Table1 ( ID INT PRIMARY KEY, Name VARCHAR(50) NOT NULL, Age INT NOT NULL, Gender VARCHAR(10) NOT NULL ); -- 插入数据到表1 INSERT INTO Table1 (ID, Name, Age, Gender) VALUES (1, 'John', 25, 'Male'), (2, 'Mary', 30, 'Female'), (3, 'Tom', 20, 'Male'), (4, 'Alice', 35, 'Female'), (5, 'Bob', 28, 'Male'), (6, 'Sara', 32, 'Female'), (7, 'David', 27, 'Male'), (8, 'Julia', 29, 'Female'), (9, 'Alex', 24, 'Male'), (10, 'Lisa', 31, 'Female'); -- 创建表2 CREATE TABLE Table2 ( ID INT PRIMARY KEY, Department VARCHAR(50) NOT NULL, Manager VARCHAR(50) NOT NULL ); -- 插入数据到表2 INSERT INTO Table2 (ID, Department, Manager) VALUES (1, 'Sales', 'John'), (2, 'Marketing', 'Mary'), (3, 'IT', 'Tom'), (4, 'HR', 'Alice'), (5, 'Finance', 'Bob'), (6, 'Operations', 'Sara'), (7, 'Engineering', 'David'), (8, 'Customer Service', 'Julia'), (9, 'Research', 'Alex'), (10, 'Product Development', 'Lisa'); -- 创建表3 CREATE TABLE Table3 ( ID INT PRIMARY KEY, ProductName VARCHAR(50) NOT NULL, Price FLOAT NOT NULL ); -- 插入数据到表3 INSERT INTO Table3 (ID, ProductName, Price) VALUES (1, 'iPhone', 999.99), (2, 'Samsung Galaxy', 799.99), (3, 'Google Pixel', 899.99), (4, 'Huawei P30', 699.99), (5, 'OnePlus 7T', 599.99), (6, 'Xiaomi Mi 9', 499.99), (7, 'LG G8', 699.99), (8, 'Sony Xperia', 749.99), (9, 'HTC U12', 649.99), (10, 'Nokia 9', 599.99); -- 创建表4 CREATE TABLE Table4 ( ID INT PRIMARY KEY, OrderDate DATE NOT NULL, ProductID INT NOT NULL, Quantity INT NOT NULL, FOREIGN KEY (ProductID) REFERENCES Table3(ID) ); -- 插入数据到表4 INSERT INTO Table4 (ID, OrderDate, ProductID, Quantity) VALUES (1, '2020-01-01', 1, 2), (2, '2020-02-01', 2, 3), (3, '2020-03-01', 3, 1), (4, '2020-04-01', 4, 4), (5, '2020-05-01', 5, 2), (6, '2020-06-01', 6, 3), (7, '2020-07-01', 7, 1), (8, '2020-08-01', 8, 4), (9, '2020-09-01', 9, 2), (10, '2020-10-01', 10, 3); -- 创建表5 CREATE TABLE Table5 ( ID INT PRIMARY KEY, CustomerName VARCHAR(50) NOT NULL, OrderID INT NOT NULL, FOREIGN KEY (OrderID) REFERENCES Table4(ID) ); -- 插入数据到表5 INSERT INTO Table5 (ID, CustomerName, OrderID) VALUES (1, 'John Smith', 1), (2, 'Mary Johnson', 2), (3, 'Tom Lee', 3), (4, 'Alice Wang', 4), (5, 'Bob Chen', 5), (6, 'Sara Kim', 6), (7, 'David Lee', 7), (8, 'Julia Brown', 8), (9, 'Alex Wong', 9), (10, 'Lisa Zhang', 10);
06-08

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值