java_系列3_数组

数组1. 数组可以存放多个同一类型数据。数组也是一种数据类型,是引用类型。即:数组就是一组数据快速入门数组//1.存储一个班6个人的成绩,并输出每个人的成绩import java.util.Scanner;/** * @author Hwang * @create 2020-06-29 15:02 */public class ArrayTest { public static void main(String[] args) { double[] sco
摘要由CSDN通过智能技术生成

数组

1. 数组可以存放多个同一类型数据。数组也是一种数据类型,是引用类型。
即:数组就是一组数据。


快速入门数组

//1.存储一个班6个人的成绩,并输出每个人的成绩
import java.util.Scanner;

/**
 * @author Hwang
 * @create 2020-06-29 15:02
 */
public class ArrayTest {
   
    public static void main(String[] args) {
   
        double[] scores=new double[6];
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < scores.length; i++) {
   
            System.out.print("请输入第"+(i+1)+"个人的成绩: ");
            scores[i]=sc.nextDouble();
        }
        for (int i = 0; i < scores.length; i++) {
   
            System.out.println("第"+(i+1)+"个人的成绩为: "+scores[i]);
        }

    }
}

数组的使用方式

使用方式1-动态初始化
1.数组的定义
数据类型 数组名[] =new 数据类型[大小]
int  a[] = new int[5];//创建了一个数组,名字a,存放5个int

使用方式2-静态初始化
1. 初始化数组语法:
数据类型[] 数组名={元素值,元素值...}
知道数组有多少元素,具体值,使用静态初始化

//1.循环输入5个成绩并输出
public class ArrayTest {
   
    public static void main(String[] args) {
   
        double[] scores=new double[6];//数组存储6个人的成绩
        Scanner sc = new Scanner(System.in);
        for (int i = 0; i < scores.length; i++) {
   
            System.out.print("请输入第"+(i+1)+"个人的成绩: ");
            scores[i]=sc.nextDouble();//从键盘输入成绩
        }
        for (int i = 0; i < scores.length; i++) {
   
            System.out.println("第"+(i+1)+"个人的成绩为: "+scores[i]);//遍历输出每个学生的成绩
        }

    }
}

细节

1. 数组是多个相同类型数据的组合,实现对这些数据的统一管理

2. 数组中的元素可以是任何数据类型,包括基本类型和引用类型,但是不能混用。

3. 数组创建后,如果没有赋值,有默认值int 	0,short 0, byte 0, long 0, float 0.0,double 0.0,char \u0000,boolean false,String null

4. 使用数组的步骤 :1. 声明数组并开辟空间   2 .给数组各个元素赋值  3 .使用数组

5. 数组的下标是从0开始的。

6. 数组下标必须在指定范围内使用,否则报:下标越界异常,比如 int [] arr=new int[5]; 则有效下标为 0-4

7. 数组属引用类型,数组型数据是对象(object),数组中的每个元素相当于该对象的成员变量
class ArrayDetail{
   
}

数组的应用案例


        /*1.
         * 创建一个char类型的26个元素的数组,分别 放置'A'-'Z‘。
         * 使用for循环访问所有元素并打印出来。提示:char类型数据运算
         * 'A'+1 -> 'B','0'+1 -> '1‘
         * */
        char[] varg = new char[26];
        for (int i = 0; i < varg.length; i++) {
   
            varg[i] = (char) ('A' + i);
        }
        for (int i = 0; i < varg.length; i++) {
   
            System.out.print(varg[i] + "\t");
        }


***********************************************************************************************
        /*2.
         * 请求出一个数组的最大值,并得到对应的下标。
         * */
        int maxIndex=0;//默认最大值的是数组的第一个元素 所以其下标默认为0
        Scanner sc = new Scanner(System.in);
        int []arr=new int[5];
        for (int i = 0; i < arr.length; i++) {
   
            System.out.print("请输入第"+(i+1)+"个数据: ");
            arr[i] = sc.nextInt();
        }
        int a[]={
   1,2,3};
        int max=arr[0];//默认的最大值
        for (int i = 1; i < arr.length; i++) {
   
        if(arr[i]>max){
   
            max=arr[i];//这个数大于默认的最大值,则将该数覆盖掉最大值
            maxIndex=i;//并且将该索引覆盖掉
        }
        }
        System.out.println("max: "+max);
        System.out.println("maxIndex :"+maxIndex);

数组复杂使用-赋值

1. 基本数据类型赋值,这个值就是具体的数据,而且相互不影响。
2.  数组在默认情况下是引用传递,即赋的值是地址。
int [] arr=new int[6];		//arr就是引用

引用赋值的图解与代码

在这里插入图片描述

public class ArrayApply
{
   
	public static void main(String[] args) {
   
		int[] arr1 = {
   1,2,3};
		int[] arr2 = arr1;
		arr1[0] = 666;
		System.out.println(arr1[0]); // 666
		System.out.println(arr2[0]); // 666
		//修改其中一个数组的元素值,另外一个数组元素的值也会跟着修改
	}
}

数组拷贝(内容复制)图解与代码

在这里插入图片描述

/**
 * @author Hwang
 * @create 2020-06-29 19:17
 */
public class ArrayCopy {
   
    public static void main(String[] args) {
   
        int[] arr= {
   1,2,3,4,5,6};
        int[] newArr=new int[arr.length];
        for (int i = 0; i < newArr.length; i++) {
   
            newArr[i]=arr[i];//内容复制给另外一个数组,两个数组的地址不一样

        }
        arr[0]=100;//修改旧的数组不会修改新的数组
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源】:包含前端、后端、移动开发、操作系统、人工智能、物联网、信息化管理、数据库、硬件开发、大数据、课程资源、音视频、网站开发等各种技术项目的源码。包括STM32、ESP8266、PHP、QT、Linux、iOS、C++、Java、MATLAB、python、web、C#、EDA、proteus、RTOS等项目的源码。 【项目质量】:所有源码都经过严格测试,可以直接运行。功能在确认正常工作后才上传。 【适用人群】:适用于希望学习不同技术领域的小白或进阶学习者。可作为毕设项目、课程设计、大作业、工程实训或初期项目立项。 【附加价值】:项目具有较高的学习借鉴价值,也可直接拿来修改复刻。对于有一定基础或热衷于研究的人来说,可以在这些基础代码上进行修改和扩展,实现其他功能。 【沟通交流】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。鼓励下载和使用,并欢迎大家互相学习,共同进步。【项目资源
大学生在线租房平台管理系统按照操作主体分为管理员和用户。管理员的功能包括报修管理、报修评价管理、字典管理、房东管理、房屋管理、房屋收藏管理、房屋留言管理、房屋租赁管理、租房论坛管理、公告信息管理、留言板管理、用户管理、管理员管理。用户的功能等。该系统采用了Mysql数据库,Java语言,Spring Boot框架等技术进行编程实现。 大学生在线租房平台管理系统可以提高大学生在线租房平台信息管理问题的解决效率,优化大学生在线租房平台信息处理流程,保证大学生在线租房平台信息数据的安全,它是一个非常可靠,非常安全的应用程序。 管理员权限操作的功能包括管理公告,管理大学生在线租房平台信息,包括房屋管理,培训管理,报修管理,薪资管理等,可以管理公告。 房屋管理界面,管理员在房屋管理界面中可以对界面中显示,可以对房屋信息的房屋状态进行查看,可以添加新的房屋信息等。报修管理界面,管理员在报修管理界面中查看报修种类信息,报修描述信息,新增报修信息等。公告管理界面,管理员在公告管理界面中新增公告,可以删除公告。公告类型管理界面,管理员在公告类型管理界面查看公告的工作状态,可以对公告的数据进行导出,可以添加新公告的信息,可以编辑公告信息,删除公告信息。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值