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

【数组的定义数组与内存的关系】

数组的定义&数组与内存的关系

    • 数组的定义
      • 数组定义的语法
        • 数组的初始化
        • 数组元素的表示与赋值
        • 数组插入:
    • 数组与内存的关系
    • 数组的基本操作
      • 插入数值
      • 修改元素
      • Arrays类的常用方法
      • 总结

数组的定义

JAVA中的数组
在Java中,数组就是一个变量,用于将相同数据类型的数据存储在内存。数组中的每一个数据元素都属于同一数据类型

数组定义的语法

数据类型[] 数组名 = new 数据类型[数组长度]
或者
数据类型 数组名[] = new 数据类型[数组长度]

–>定义数组是一定要指定数组名和数据类型
–>必须书写“[]”表示定义的一个数组,而不是一个普通的变量
–>【“数组长度”】决定的分配空间的个数,通过数组的length属性可获取此长度
–>数组的数据类型用于确定分配的每个空间大小

数组的初始化

语法格式:
数据类型【】数组名={值1,值2,值3…值n};
或者
数据类型【】数组名=new 数组类型【】{值1,值2,值3…值n};

数组元素的表示与赋值

语法:
数组名【下标值】=值;

数组插入:

1.先把数组使用冒泡排序排列为升序排列
2.把输入的值循环判断,是否大于数组中的某一个元素
如果大于,数组元素中的元素下标赋给定义的下标值,
结束循环,break;
3.把数组中的元素后移,从数组元素中倒数第二个数开始
大于等于定义的下标值,然后循环元素后移
4.插入,数组中等于定义的下标值,等于输入插入的数字
5.循环输出看结果是否正确

数组与内存的关系

在这里插入图片描述

程序在堆内存开辟一块连续的空间

数组的基本操作

package one04;
import java.util.Scanner;
public class Score03 {public static void main(String[] args) {//数组删除元素//先提示用户输入需要删除的手机品牌如果不存在index等于-1给用户一个提示没有您需要删除的元素//如果存在,获取元素的下标,然后循环便利,用后面数组的元素覆盖住这个下标//再然后,把数组最后一个没有的元素给定义为null//然后for循环便利不为空的元素,这样删除元素就完成了Scanner input=new Scanner(System.in);int index=-1;String[] names={"苹果","三星","vivo","华为"};System.out.println("请输入要删除的数组元素:");String name=input.next();for (int i = 0; i < names.length; i++) {if(name.equals(names[i])){index=i;}}if(index==-1){System.out.println("没有您要删除的元素!");}else{for (int i = index; i < names.length-1; i++) {names[i]=names[i+1];}names[names.length-1]=null;System.out.println("删除后的数组元素:");for (int i = 0; i < names.length; i++) {if(names[i]!=null){System.out.println(names[i]);}}}}
}

插入数值

在这里插入图片描述

package one04;
import java.util.Scanner;
public class Score01 {public static void main(String[] args) {//从数组里添加元素//定义一个int类型的变量//for循环遍历数组元素判断空间是否已满,如果为空可以添加,把数组下标给int类型变量//如果空间已满,变量为-1给出一个提示,空间已满int index=-1;Scanner input=new Scanner(System.in);String[] names={"苹果","三星","vivo","华为",null};for (int i = 0; i < names.length; i++) {if(names[i]==null){System.out.println("请输入要添加的手机品牌:");names[i]=input.next();index=i;break;}}if(index==-1){System.out.println("空间已满!不可添加!");}for (int j = 0; j < names.length; j++) {System.out.println(names[j]);}}}

修改元素

package one04;import java.util.Scanner;public class Score02 {public static void main(String[] args) {//修改数组中的元素//提示用户输入需要修改的手机品牌//for循环便利,如果找到就提示输入新的手机品牌然后break退出循环//然后打印一遍修改后的值int index=-1;Scanner input=new Scanner(System.in);String[] names={"苹果","华为","三星","vivo","opop"};;System.out.println("请输入要修改的手机品牌:");String name=input.next();for (int i = 0; i < names.length; i++) {if(name.equals(names[i])){index=i;System.out.println("请输入新的手机品牌:");names[i]=input.next();break;}}if(index==-1){System.out.println("您输入的手机品牌不存在!");}else{for (int i = 0; i < names.length; i++) {System.out.println(names[i]);}}}}

Arrays类的常用方法

方法名 返回类型 作用
equals(array1,array2); boolean 比较两个数组长度是否相等
sort(array) void 对数组Array的元素进行排序
toString(array) String 讲一个数组array转换成一个字符串
fill(array,val) void 将数组array的所有元素都赋值为val
copyOf(array,length) 与array数据类型一致 把数组array复制成一个长度为length的新数组
binarySearch(array,val) int 查询元素值val在数组中的下标

总结

数组的作用方便存储相同类型的数据
使用数组要根据数组的下标来进行操作
遍历一个数组根据数组的下标来遍历
求最大值,循环对比如果i大于i+1那么不用换位置,如果小于就换位置,循环完毕i的值就是最大值

总结

在这里插入图片描述
数组的作用方便存储相同类型的数据
使用数组要根据数组的下标来进行操作
遍历一个数组根据数组的下标来遍历
求最大值,循环对比如果i大于i+1那么不用换位置,如果小于就换位置,循环完毕i的值就是最大值

相关文章:

  • 基于微信小程序的高校校园微活动管理系统设计与实现(源码+定制+开发)高校微信小程序校园活动发布与互动平台开发 面向大学生群体的校园活动移动平台设计与实现
  • Redis核心用法与通用命令全解析
  • 212. 单词搜索 II
  • 机器人收硬币算法c++,完整代码可运行
  • TDengine 高可用——双副本
  • Android Raspberry 请求 api 失败 iOS 请求成功【ssl 证书配置问题】
  • 【LangChain大模型应用与多智能体开发 ① 初识LangChain 】
  • 人工智能100问☞第30问:什么是损失函数?
  • 20250523-BUG:无法加载“GameLib/Framework.h“头文件(已解决)
  • 【Kafka】编写消费者开发模式时遇到‘未解析的引用‘SIGUSR1’’
  • 20250523-BUG-E1696:无法打开元数据文件“platform.winmd(已解决)
  • UI 设计|提高审美|Linear UI风格分享
  • 钉钉出口IP有哪些
  • ECharts图表工厂,完整代码+思路逻辑
  • 【GAN网络入门系列】二,DCGAN人脸图片生成与转置卷积讲解
  • Redis7 新增数据结构深度解析:ListPack 的革新与优化
  • 软件测试(4) 白盒测试
  • 1536. 【中山市第十一届信息学邀请赛决赛】同质(same)
  • 63. 不同路径 II
  • siparmyknife:SIP协议渗透测试的瑞士军刀!全参数详细教程!Kali Linux教程!
  • 网站建设捌金手指花总十六/网站排名靠前
  • 免费做相册video的网站/seo人才网
  • 网站说服力营销型网站策划/推广普通话文字素材
  • 分类信息网站 建议 建设/优化设计答案五年级上册
  • 合肥的电商网站设计/网络营销策划书应该怎么写
  • 新乡网站关键字优化/提交链接