房上的猫:数组

一.数组:  1.定义:   (1)数组就是一个变量,用于将相同数据类型的数据储存在内存中   (2)数组中的每一个数据元素都属于统一数据类型  2.基本要素:   (1)标识符:    和变量一样,在计算机中,数组也要有一个名称,称为标识符,用于区分不同的数组   (2)数组元素:    当给出数组名称,即数组标识符后,要向数组中存放数据,这些数据就称为数组元素   (3)数组下标:    在数组中为了正确地得到数组的元素,需要对它们进行编号,这样计算机才能去存取,这个编号就称为数组下标   (4)元素类型:    存储在数组中的数组元素应该是同一数据类型  3.总结:   (1)数组只有一个名称,即标识符   (2)数组元素在数组里顺序排列编号,该编号即为数组下标   (3)数组中的每个元素都可以通过下标来访问   (4)数组的大小(长度)是数组可容纳元素的最大数量,    >定义一个数组的同时也定义了它的大小    >如果数组已满但是还继续向数组中存储数据的话,程序就会出错,这称为数组越界  4.使用数组步骤与语法:   (1)声明数组:    数据类型[] 数组名;        或者    数据类型 数组名[];   (2)分配空间:    数组名 = new 数据类型[数组长度];   合并:数据类型[] 数组名 = new 数据类型[数组长度];   (3)赋值:    数组名[下标值];    数据类型[] 数组名 = {值1,值2,值3,......,值n};   (4)对数据进行处理:   注:数组一经创建,其长度(数组中包含元素的数目)是不可改变的,如果越界访问(即数组下标超过0至数组长度-1的范围),程序会报错    因此,当我们需要使用数组长度时,一般用"数组名.length;"方式  5.常见错误:   (1)数组下标    数组下标从0开始,而不是从1开始   (2)数组访问越界    如果访问数组元素时指定的下标小于0,或者大于等于数组的长度,都会出现数组下标越界异常   (3)排错方法:    增加数组长度或删除超出数组下标范围的语句  6.数组的排序:   语法:    Arrays.sort(数组名);     对数组进行升序排序(从小到大)   拓展:Arrays.toString();在输出语句内输出整个数组  7.数组的插入算法(难点):   (1)定义一个长度为原数组长度+1的数组   (2)将旧数组的值赋值给新数组   (3)找到新增值的插入位置   (4)元素后移(倒着移,将前一位赋值给后一位)空出要插入的位置   (5)给要插入的位置(已空出)赋值

二.演示:

public class Job_010 {


    public static void main(String[] args) {
        Scanner bdqn = new Scanner(System.in);
        String[] a = new String[] { "Island", "Ocean", "Pretty", "Sun" };
        System.out.print("插入前的数组为:");
        for (int i = 0; i < a.length; i++) {
            System.out.print(a[i] + "\t");
        }
        System.out.print("\n请输入歌曲名称:");
        String b = bdqn.next();
        String[] newa = new String[a.length + 1];
        for (int j = 0; j < a.length; j++) {
            newa[j] = a[j];
        }
        newa[newa.length - 1] = b;
        Arrays.sort(newa);
        System.out.print("插入后的数组为:");
        for (int t = 0; t < newa.length; t++) {
            System.out.print(newa[t] + "\t");
        }
    }
}

 演示结果:

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏好好学java的技术栈

“面试不败计划”: java语言基础面试题(三)

13230
来自专栏『不羁阁』 | 行走少年郎专栏

OC知识--成员变量(属性,实例变量)的相关知识

20760
来自专栏专注 Java 基础分享

关于类的对象创建与初始化

今天,我们就来解决一个问题,一个类实例究竟要经过多少个步骤才能被创建出来,也就是下面这行代码的背后,JVM 做了哪些事情?

42760
来自专栏架构之路

Java子类的父类和要实现的接口有相同的方法/函数会冲突吗

答案是,不会。子类优先实现父类的方法,虽然父类的方法和接口的方法长得一模一样。 class father{ public void f(){} } in...

36230
来自专栏塔奇克马敲代码

第 18 章 用于大型程序的工具

19950
来自专栏我和PYTHON有个约会

11.程序编程基础5:输入输出

python提供了3种输入输出标准文件对象,分别为标准输入、标准输出和标准错误;分别对应了sys模块中的sys.stdin,sys.stdout,sys.std...

10920
来自专栏十月梦想

JavaScript数组对象

万能操作 数组.splice(开始位置,数量,操作),操作后原数组的内容改变第一个参数是指定从几号位置开始删除或添加  第二个参数是指定删除几个元素

10430
来自专栏Java帮帮-微信公众号-技术文章全总结

04.Java对象和类

04.Java对象和类 Java 对象和类 Java作为一种面向对象语言。支持以下基本概念: 多态 继承 封装 抽象 类 对象 实例 方法 重载 本节我们重点研...

46760
来自专栏我的技术专栏

C++ 异常机制分析

19640
来自专栏Python爬虫与数据挖掘

Python正则表达式初识(六)

继续分享Python正则表达式基础,今天给大家分享的正则表达式特殊符号是“[]”。中括号十分实用,其有特殊含义,其代表的意思是中括号中的字符只要满足其中...

11960

扫码关注云+社区

领取腾讯云代金券