精华内容
下载资源
问答
  • java 数组索引与长度属性

    千次阅读 2018-04-21 11:50:25
    /* 数组是一个容器:存储到数组中的每个元素,都有自己的自动编号 最小值为0,最大值为长度-1 索引(index) 下标 角标 ... Java 提供一个属性,就是数组的长度,属性的名字 length 使用属性: 数组...
    /*
        数组是一个容器:存储到数组中的每个元素,都有自己的自动编号
        最小值为0,最大值为长度-1
        索引(index) 下标 角标
        访问数组存储的元素,必须依赖于索引。
        公式:
          数组名[索引]
          定义完数组,即使没有存值,默认就是0
        
        Java 提供一个属性,就是数组的长度,属性的名字 length
        使用属性: 数组名.length
        数组的最小索引为0,最大索引就是length-1
    */
    public class ArrayIndexDemo{
        public static void main(String[] args){
            
            int[] arr = new int[3];
            System.out.println(arr);
            //[I@32784a [代表数组 I代表整数 @分隔符 后边内存地址十六进制
            System.out.println(arr[0]);//0
            System.out.println(arr[1]);//0
            System.out.println(arr[2]);//0
            
            System.out.println(arr.length);//3
        }   
    }

    展开全文
  • Java数组中查找对应数值的索引

    千次阅读 2020-03-11 18:48:22
    数组中查找对应数值的索引 public class Seek{ public static void main(String[] args) { int [] arr = {1,2,3}; int y = Seek(arr,1); System.out.println(y); } public static int ...

    查找

    在数组中查找对应数值的索引

    public class Seek{
        public static void main(String[] args) {
            int [] arr = {1,2,3};
    
            int y = Seek(arr,1);
            System.out.println(y);
        }
        public static int Seek(int[] arr,int number){
            for (int index = 0;index<arr.length;index++) {
                if (arr[index] == number) {
                //找到数值,返回索引
                    return index;
                }
              //没找到数值,返回-1
            }return -1;
        }
    }
    
    
    展开全文
  • 数组(C# 与 Java)09/04/2008本文内容更新:2007 年 11 月数组...一维数组一维数组以线性方式存储固定数目的项,只需一个索引值即可标识任意一个项。在 C# 中,数组声明中的方括号必须跟在数据类型后面,且不能放在变...

    数组(C# 与 Java)

    09/04/2008

    本文内容

    更新:2007 年 11 月

    数组是具有相同数据类型的项的有序集合。要访问数组中的某个项,需要同时使用数组名称及该项与数组起点之间的偏移量。在 C# 中,声明和使用数组的方法与 Java 有一些重要区别。

    一维数组

    一维数组以线性方式存储固定数目的项,只需一个索引值即可标识任意一个项。在 C# 中,数组声明中的方括号必须跟在数据类型后面,且不能放在变量名称之后,而这在 Java 中是允许的。因此,类型为 integers 的数组应使用以下语法声明:

    int[] arr1;

    下面的声明在 C# 中无效:

    //int arr2[]; //compile error

    声明数组后,可以使用 new 关键字设置其大小,这一点与 Java 相同。下面的代码声明数组引用:

    int[] arr;

    arr = new int[5]; // create a 5 element integer array

    然后,可以使用与 Java 相同的语法访问一维数组中的元素。C# 数组索引也是从零开始的。下面的代码访问上面数组中的最后一个元素:

    System.Console.WriteLine(arr[4]); // access the 5th element

    初始化

    C# 数组元素可以在创建时使用与 Java 相同的语法进行初始化:

    int[] arr2Lines;

    arr2Lines = new int[5] {1, 2, 3, 4, 5};

    但 C# 初始值设定项的数目必须与数组大小完全匹配,这与 Java 不同。可以使用此功能在同一行中声明并初始化 C# 数组:

    int[] arr1Line = {1, 2, 3, 4, 5};

    此语法创建一个数组,其大小等于初始值设定项的数目。

    在程序循环中初始化

    在 C# 中初始化数组的另一个方法是使用 for 循环。下面的循环将数组的每个元素都设置为零:

    int[] TaxRates = new int[5];

    for (int i=0; i

    {

    TaxRates[i] = 0;

    }

    交错数组

    C# 和 Java 都支持创建交错(非矩形)数组,即每一行包含的列数不同的数组。例如,在下面的交错数组中,第一行有四项,而第二行有三项:

    int[][] jaggedArray = new int[2][];

    jaggedArray[0] = new int[4];

    jaggedArray[1] = new int[3];

    多维数组

    可以使用 C# 创建规则的多维数组,多维数组类似于同类型值的矩阵。虽然 Java 和 C# 都支持交错数组,但 C# 还支持多维数组(数组的数组)。

    使用以下语法声明多维矩形数组:

    int[,] arr2D; // declare the array reference

    float[,,,] arr4D; // declare the array reference

    声明之后,可以按如下方式为数组分配内存:

    arr2D = new int[5,4]; // allocate space for 5 x 4 integers

    然后,可以使用以下语法访问数组的元素:

    arr2D[4,3] = 906;

    由于数组是从零开始的,因此此行将第四行第五列中的元素设置为 906。

    初始化

    可以使用以下一种方法,在同一个语句中创建、设置并初始化多维数组:

    int[,] arr4 = new int [2,3] { {1,2,3}, {4,5,6} };

    int[,] arr5 = new int [,] { {1,2,3}, {4,5,6} };

    int[,] arr6 = { {1,2,3}, {4,5,6} };

    在程序循环中初始化

    可以使用此处所示的嵌套循环初始化数组中的所有元素:

    int[,] arr7 = new int[5,4];

    for(int i=0; i<5; i++)

    {

    for(int j=0; i<4; j++)

    {

    arr7[i,j] = 0; // initialize each element to zero

    }

    }

    System.Array 类

    在 .NET Framework 中,数组是作为 Array 类的实例实现的。此类提供了许多有用的方法,如 Sort 和 Reverse。

    下面的示例演示了使用这些方法是多么的简单。首先,使用 Reverse 方法将数组元素反转,然后使用 Sort 方法对它们进行排序:

    class ArrayMethods

    {

    static void Main()

    {

    // Create a string array of size 5:

    string[] employeeNames = new string[5];

    // Read 5 employee names from user:

    System.Console.WriteLine("Enter five employee names:");

    for(int i=0; i

    {

    employeeNames[i]= System.Console.ReadLine();

    }

    // Print the array in original order:

    System.Console.WriteLine("\nArray in Original Order:");

    foreach(string employeeName in employeeNames)

    {

    System.Console.Write("{0} ", employeeName);

    }

    // Reverse the array:

    System.Array.Reverse(employeeNames);

    // Print the array in reverse order:

    System.Console.WriteLine("\n\nArray in Reverse Order:");

    foreach(string employeeName in employeeNames)

    {

    System.Console.Write("{0} ", employeeName);

    }

    // Sort the array:

    System.Array.Sort(employeeNames);

    // Print the array in sorted order:

    System.Console.WriteLine("\n\nArray in Sorted Order:");

    foreach(string employeeName in employeeNames)

    {

    System.Console.Write("{0} ", employeeName);

    }

    }

    }

    输出

    Enter five employee names:

    Luca

    Angie

    Brian

    Kent

    Beatriz

    Array in Original Order:

    Luca Angie Brian Kent Beatriz

    Array in Reverse Order:

    Beatriz Kent Brian Angie Luca

    Array in Sorted Order:

    Angie Beatriz Brian Kent Luca

    请参见

    概念

    参考

    其他资源

    展开全文
  • JAVA-数组

    2017-10-01 13:54:20
    数组:一组有顺序(指的是每一个元素都有一个编号–下标–索引)的数据,可以保存若干个数据。每一个数据我们称之为元素 一旦开辟空间之后。所有的元素都会由系统分配一个默认值。整数型:0,浮点型:0.0 boolean:...

    一、数组
    数组:一组有顺序(指的是每一个元素都有一个编号–下标–索引)的数据,可以保存若干个数据。每一个数据我们称之为元素
    一旦开辟空间之后。所有的元素都会由系统分配一个默认值。整数型:0,浮点型:0.0 boolean:false char 0 复合数据类型的:null
    数组只能保存一种数据类型,数据类型可以是任意的类型
    数组:有顺序,下标的顺序,从0开始,最大下标为length-1。
    使用数组的时候经常会遇到的异常:java.lang.ArrayIndexOutOfBoundsException 数组越界的一个异常 可能你的下标是一个负数,或者是一个大于length-1的一个值。

    数组有三种初始化的方式:
    1:动态初始化:定义和分配空间可以分开进行。也可以同时进行。
    int[] ints; ints = new int[10];
    2:静态初始化:只能声明和初始化一同进行,放到同一行。
    int[] ints = {1,2,3};
    3:动静结合:int[] ints = new int[]{1,2,3};
    4:如何访问数组元素
    数组名+下标 例如:ints[0]。

    二、增强for循环
    foreach
    优点:语法简单,使用方便。
    缺点:不能修改数组元素的内容。foreach 遍历的内容为原数组的拷贝。只能用来遍历数组。
    说它是增强的for循环,其实功能减弱了。

    1:通过数组的下标去访问数组的元素
    2:通过内容去查找某一个元素

    查找数组中的最大值和最小值。
    int min = ints[0];
    思路:挨个对数组中的元素进行比较,只要当前元素比max大,那么就把元素的值赋值给max,然后继续比较下一个。

            for (int i = 1; i < ints.length; i++) {
                if(ints[i] < min){
                    min = ints[i];
                }
            }
            System.out.println("当前数组的最小值为:"+min);

    数组的元素删除
    //找到不和谐内容的索引

            final String str = "土豆";
            final int len = names.length;
            int index = 0;//存储不和谐内容的索引
            for (int i = 0; i < len; i++) {
                if(names[i].equals(str)){
                    index = i;
                    System.out.println("不和谐内容索引为:"+index);
                    break;
                }
            }
            //不和谐元素后面的内容全部前移一个元素
            for (int i = index; i < len-1; i++) {
                names[i] = names[i+1];
            }
            //将最后一个元素设置为null
            names[len-1] = null;
            //遍历打印
            for (String string : names) {
                System.out.println( string);
            }

    数组的优点和缺点
    优点:
    按照数组的索引访问数组的元素速度很快。遍历数组的元素非常快。
    缺点:
    1:数组的长度一旦确定不能更改,对于有扩容需求的数据是无法满足。
    2:删除数组的元素效率比较低。需要自己封装方法。数组的封装程度比较低。
    没有提供足够的对元素操作的方法。所有的对元素的操作都需要自己手动实现。

    冒泡排序的实现原理

            for (int i = 0; i < len-1; i++) {
                for (int j = 0; j < len-i-1 ; j++) {
                    if(ints[j]>ints[j+1]){
                        int temp = ints[j];
                        ints[j]  =ints[j+1];
                        ints[j+1] = temp;
                    }
                }
            }

    三、Arrays
    封装了大量操作数组的方法
    Arrays类—构造器 是 private修饰 private Arrays() {}
    不能创建对象,如果我想要访问Arrays类其中的方法:只能通过 类名.方法名访问(因为Arrays类里面的方法 都是静态方法 都用static修饰)
    常用方法:
    sort 排序 升序排序
    binarySearch 二分法查找
    copyOf 拷贝 返回生成新的数组
    fill 填充 将制定的数组,填充为制定的内容
    equals 比较两个数组是否相等
    toString 打印指定的数组的内容

    四、二维数据

    一维数组的元素又是一个一维数组 那么该数组就是一个二维数组
    一个一维数组的元素是一个二维数组,那么该数组就是三维数组。
    语法:
    int[][] ints = new int[3][4];

    public static void main(String[] args) {
            //定义高纬度的元素个数
            int[][] ints = new int[9][];
            //定义低纬度的元素个数        
            for (int i = 0; i < ints.length; i++) {
                ints[i] = new int[i+1];
            }
            //
            for (int i = 0; i < ints.length; i++) {//代表行数
                for (int j = 0; j < ints[i].length; j++) {//第i行的列数
                    ints[i][j] = (i+1)*(j+1);
                    System.out.print("  "+(j+1) +"*"+(i+1)+" = "+ ints[i][j]);
                }
                System.out.println();
            }
    }

    可变参数
    语法:(int … ints)

    public int add(int ... ints){
            int sum = 0;
            for (int i = 0; i < ints.length; i++) {
                sum += ints[i];
            }
            return sum;
    }

    特点:
    1:可变参数,必须当做数组来处理。
    2:可变参数可以接收参数的数量?0-N个。
    3:方法调用中传递参数,在进行方法匹配的时候,优先匹配定长的参数的方法。
    4:如果一个方法中有可变参数,那么该参数必须在参数列表的末尾。
    5:一个方法中,最多只能有一个可变参数。
    6:可变参数可以接收n个和参数类型一致的数据。还可以接收一个与参数类型相同的数组。

    强调一点:可变参数的方法。底层就是使用数组实现的。

    可变参数和数组作为参数的相同点和不同点
    相同点:
    1:都可以接收数组作为实参进行匹配。
    2:方法内部处理可变参数和 数组参数,都只能当做数组进行处理。

    不同点:
    1:数组参数只能接收数组,变参可以接收数组,还可以接收与变参类型相同的类型的若干(0—n)数据。
    2: 数组作为参数,可以有多个数组的形参。变参最多只能有一个,而且只能在参数列表的末尾。

    展开全文
  • Java数组

    2019-07-04 22:21:57
    数组数组引入和定义 int char 数组:是一种数据类型符号为[].这种数据类型可以保存一组数,是一组数的集合。这一组数数据的类型必须是相同的。 数组的定义: 定义变量: int age = 10; 定义数组: int[] ages = ...
  • 概述在本教程中,我们将深入研究Java语言中的一个核心概念——数组。我们先看看什么是数组,然后再看看如何...数组的元素被索引,这意味着我们可以用数字(索引)访问它们。我们可以将数组视为单元格的编号列表,每...
  • Java——数组

    2018-10-07 11:05:52
    什么是数组数组是编程语言中一种常见的数据结构,可以用于储存多个数据,每个数组元素存放一个数据。也可把它看做一个存放数据的容器,数组既可以存储基本数据类型,也可以存储引用数据类型。但是一个数组中只能...
  • 1、遍历数组 2、判断索引是否是奇数(索引 % 2 != 0) 3、判断索引对应的元素是否是奇数(arr[索引] % 2 != 0) 4、满足条件输出结果 package day04.work; import java.util.Scanner; public class Test02 { ...
  • Java数组

    2021-04-05 22:36:57
    java数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java 语言中提供的数组是用来存储固定大小的同类型元素。 你可以声明一个数组变量,如 numbers[100] 来...
  • 1. Java数组的定义:  1) 和其它编程语言的数组定义基本相同,具有2要素,分别是类型一致(数组中的数据都是一种类型的)和定长(初始化时就已经确定长度,这也意味着数组的内存空间也确定了,即大小不变了);  2...
  • java数组复制方法System.arraycopy()的使用说明

    万次阅读 多人点赞 2020-04-30 18:27:47
    目录使用方法参数:源码示例代码 使用方法 public static native void arraycopy...src:要复制的数组(源数组) srcPos:复制源数组的起始位置 dest:目标数组 destPos:目标数组的下标位置 length:要复制的长...
  • Java——数组(概念理解+应用举例)

    千次阅读 2020-06-04 13:24:12
    1.关于Java中的数组: 在Java语言中,数组是一个非常重要的概念,我们经常使用的... 这些数据可以通过索引进行访问,数组的下标索引是从 0 开始,其取值范围必需是:0~数组长度-1 。 数组是JVM的核心类型,是 Ja..
  • JAVA数组

    2016-11-17 10:27:13
    JAVA数组 1:声明数组 数据类型[ ] 数组名; 数据类型 数组名[ ]; 2:分配空间 数组名 = new 数据类型 [ 数组长度 ]; 3:赋值 数组名[下标] = 数值; 4:直接创建数组 数据类型[ ] 数组名 ...
  • 数组 概念 用于存储具有相同数据类型的容器称之为数组,可以使用统一的标识符(变量名进行管理) 数据既可以存储基本数据类型也可以存储引用数据类型=》可以存储任意类型的数据 数组的使用 ①声明 //### ①声明 //...
  • Java 数组一级目录二级目录三级目录 一级目录 二级目录 三级目录 Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java 语言中提供的数组是用来存储固定...
  • import java.util.Arrays;int[] array1={7,8,3,2,12,6,5,4}; 1. //克隆clone int[] array2=array1.clone(); System.out.println("arry2克隆的结果是:"+Arrays.toString(array2)); 2. //复制copyof ①方法一:...
  • 摘要:这篇Java开发技术栏目下的“Java基础学习笔记之数组详解”,介绍的技术点是“java基础学习笔记、基础学习笔记、Java基础、数组详解、学习笔记、Java”,希望对大家开发技术学习和问题解决有帮助。本文实例讲述...
  • java数组列表ArrayList的使用

    千次阅读 2010-06-28 14:25:00
    1、什么是ArrayListArrayList就是传说中的动态数组,用MSDN中的说法,就是Array的复杂版本,它提供了如下一些好处:动态的增加和减少元素实现了ICollection和IList接口灵活的设置数组的大小2、如何使用ArrayList最...
  • 【Java学习】- Java数组

    2021-02-09 17:07:08
    N4 Java数组 作者:迷恋 1、数组的定义 2、数组的声明和创建 3、内存分析 4、三种初始化 5、数组的四个特点 6、数组边界 7、数组使用(for...each循环 数组方法入参 数组作为返回值) 8、二维数组 9、...
  • java数组

    2019-04-21 00:09:00
    从键盘获取不同类型的变量,就需要使用Scanner类 具体实现步骤: 1.导包:import java.util.Scanner; 2.Scanner的实例化:Scanner xx = new Scanner(system.in); 3.调用Scanner类的相关方法(String类型是:...
  • Java系列之Java数组

    2019-10-16 11:31:45
    数组 数组是什么呢? 数组是一种用于存储数据的典型数据结构。 数组是把具有相同类型的若干变量按有序的形式组织起来的一种形式 数组主要分为两种 一维数组 二维数组 一维数组 一维数组的定义: 一维数组的定义...
  • Java 数组 数组对于每一门编程语言来说都是重要的数据结构之一,当然不同语言对数组的实现及处理也不尽相同。 Java 语言中提供的数组是用来存储固定大小的同类型元素。 你可以声明一个数组变量,如 numbers[100] ...
  • 我们在操作数组的时候,需要获取所目标值的索引值,然后进行相应的操作。 2、在es6中提供了这种方法,findIndex; 3、 定义和用法 findIndex() 方法返回传入一个测试条件(函数)符合条件的数组第一个元素位置。 find...
  • JAVA数组操作

    2018-05-14 09:47:17
    05.01_Java语言基础(数组概述和定义格式说明)(了解) A:为什么要有数组(容器) 为了存储同种数据类型的多个值 B:数组概念 数组是存储同一种数据类型多个元素的集合。也可以看成是一个容器。 数组既可以存储基本...
  • INDEXJAVA 数组Java 日期时间 JAVA 数组 Java 数组 数组对于每一门编程语言...本教程将为大家介绍Java数组的声明、创建和初始化,并给出其对应的代码。 声明数组变量 首先必须声明数组变量,才能在程序中使用数组。下
  • JAVA基础.数组

    2016-09-26 22:28:10
    这里总结了一下JAVA数组,后面会更新和补充 1.数组的声明: int[] arr;//声明的是一个名为arr的int类型的一维数组 int[][] arr;声明的是一个名为arr的int类型二维数组 2.数组的创建 arr = new int[3];//创建一...
  • Java基础——数组

    2020-01-31 16:04:20
    Java基础——数组 数组 数组的概念:存储同一种数据类型多个元素的集合,既可以存储基本数据类型,也可以存储引用数据类型。 数组的作用:为了存储同种数据类型的多个值。 定义格式: 数据类型[] 数组名 = new ...
  • 一、java方法 1、什么是方法 示例 System.out.ptintln(); System是一个类,out是一个输出对象,println是方法。调用System类中的标准输出对象out中的println方法 java方法是语句的集合,在一起执行一个功能 回顾: ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 63,173
精华内容 25,269
关键字:

java获取数组匹配的索引

java 订阅