计算Java数组长度函数的方法以及代码分析

 更新时间:2022年11月06日 10:51:52   作者:bjpowernode  
在本篇内容里,小编给大家整理了关于计算Java数组长度函数的方法以及代码分析内容,有兴趣的朋友么可以学习参考下。

Java 中的数组可以包含多个元素,具体取决于对象的创建方式。为了让用户执行不同的操作,必须知道数组的长度。

数组长度属性:如何求出数组的长度?

为了获得 Java 数组长度,我们需要使用“数组长度属性”,如下例所示:

/**
* An Example to get the Array Length is Java
*/
public class ArrayLengthJava {
public static void main(String[] args) {
String[] myArray = { "I", "Love", "Music" };
int arrayLength = myArray.length; //array length attribute
System.out.println("The length of the array is: " + arrayLength);
}
}

输出

数组的长度为:3

必须注意,Java Array Object没有获取其长度的方法。

很多时候,我们不知道数组对象是如何创建的。对于这样的程序,我们使用一个接收数组并打印长度的函数。

/**
* An Example to find the Java Array Length using a function
*/
public class ArrayLengthJava {
private static void printArrayLength(String[] myArray) {
if (myArray == null) //to check whether the array is empty or not
{
System.out.println("The length of the array can't be determined.");
} else {
int arrayLength = myArray.length;
System.out.println("The length of the array is: " + arrayLength);
}
}
public static void main(String[] args) {
String[] JavaArray1 = { "I", "Love", "Music" };
String[] JavaArray2 = { "R", "S" };
String[] JavaArray3 = { "1", "2", "3", "4" };
String[] JavaArray4 = { "Java" };
printArrayLength(null);
printArrayLength(JavaArray1);
printArrayLength(JavaArray2);
printArrayLength(JavaArray3);
printArrayLength(JavaArray4);
}
}

输出:

无法确定数组的长度。
数组的长度为:3
数组的长度为:2
数组的长度为:4
数组的长度为:1

必须注意,在访问空对象或 null 对象的长度字段时,会引发 NullPointerException。

在 Java 中使用数组长度搜索值

数组长度有许多有用的属性,可以在编程时使用。在下面的示例中,我们使用数组的长度来遍历所有元素并确定是否存在特定值。

/**
* An Example that uses Java Array Length to check if the array contains a
* specific value.
*/
public class ArrayLengthJava {
private static boolean arrayContainsValue(String[] myArray,
String lookForValue) {
if (myArray != null) {
int arrayLength = myArray.length;
for (int i = 0; i <= arrayLength - 1; i++) {
String value = myArray[i];
if (value.equals(lookForValue)) {
return true;
}
}
}
return false;
}
public static void main(String[] args) {
String[] JavaArray = { "I", "Love", "Music" };
System.out.println(arrayContainsValue(JavaArray, "Love"));
System.out.println(arrayContainsValue(JavaArray, "Guitar"));
}
}

输出:

真的 错误的

上面给出的程序将值输出为真,因为“ Love”存在于数组中,而“吉他”是不存在的元素,因此输出为假。

知识点扩展:

动态改变数组的长度

/** * Reallocates an array with a new size, and copies the contents  
 * * of the old array to the new array.  
 * * @param oldArray the old array, to be reallocated.  
 * * @param newSize  the new array size.  
 * * @return     A new array with the same contents.  
 * */  
private static Object resizeArray (Object oldArray, int newSize) {    
  int oldSize = java.lang.reflect.Array.getLength(oldArray);    
  Class elementType = oldArray.getClass().getComponentType();    
  Object newArray = java.lang.reflect.Array.newInstance(       
      elementType,newSize);    
  int preserveLength = Math.min(oldSize,newSize);    
  if (preserveLength > 0)      
    System.arraycopy (oldArray,0,newArray,0,preserveLength);    
  return newArray;  }    
// Test routine for resizeArray().   
public static void main (String[] args) {    
  int[] a = {1,2,3};    
  a = (int[])resizeArray(a,5);    
  a[3] = 4;    
  a[4] = 5;    
  for (int i=0; i<a.length; i++)      
    System.out.println (a[i]);   
} 

到此这篇关于计算Java数组长度函数的方法以及代码分析的文章就介绍到这了,更多相关计算Java数组长度函数的方法内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Java构建菜单树的实现示例

    Java构建菜单树的实现示例

    本文主要介绍了Java构建菜单树的实现示例,像一级菜单,二级菜单,三级菜单甚至更多层级的菜单,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-05-05
  • Spring MVC参数自动绑定List的解决方法

    Spring MVC参数自动绑定List的解决方法

    这篇文章主要为大家详细介绍了Spring MVC参数自动绑定List的解决方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-12-12
  • java邮件发送简单实现代码

    java邮件发送简单实现代码

    这篇文章主要为大家详细介绍了java邮件发送简单实现代码,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • SSH框架网上商城项目第8战之查询和删除商品类别功能实现

    SSH框架网上商城项目第8战之查询和删除商品类别功能实现

    SSH框架网上商城项目第8战之查询和删除商品类别功能实现,为项目增加功能,添加、更新、删除和查询操作,感兴趣的小伙伴们可以参考一下
    2016-05-05
  • RabbitMQ消息确认机制剖析

    RabbitMQ消息确认机制剖析

    这篇文章主要为大家介绍了RabbitMQ消息确认机制剖析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-08-08
  • hibernate中的对象关系映射

    hibernate中的对象关系映射

    hibernate中的ORM映射文件通常以.hbm.xml作为后缀。使用这个映射文件不仅易读,而且可以手工修改,也可以通过一些工具来生成映射文档,下文给大家详细的介绍hibernate中的对象关系映射,需要的朋友参考下吧
    2017-09-09
  • 详解java操作Redis数据库的redis工具(RedisUtil,jedis工具JedisUtil,JedisPoolUtil)

    详解java操作Redis数据库的redis工具(RedisUtil,jedis工具JedisUtil,JedisPoo

    这篇文章主要介绍了java操作Redis数据库的redis工具,包括RedisUtil,jedis工具JedisUtil,JedisPoolUtil工具,本文通过实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2021-08-08
  • SpringBoot整合Lucene实现全文检索的详细步骤

    SpringBoot整合Lucene实现全文检索的详细步骤

    全文搜索(Full-Text Search)是指对大规模存储在计算机系统中的文本数据进行检索和匹配的技术,它允许用户输入关键字,然后从海量的文本数据中快速找到相关的信息,本文介绍了SpringBoot整合Lucene实现全文检索的详细步骤,需要的朋友可以参考下
    2024-03-03
  • SpringBoot的@Conditional条件注解详解

    SpringBoot的@Conditional条件注解详解

    这篇文章主要介绍了SpringBoot的@Conditional条件注解详解,打开每个自动配置类,都会看到@Conditional或其衍生的条件注解,本节我们来认识下@Conditional注解,需要的朋友可以参考下
    2023-12-12
  • 使用Java构造和解析Json数据的两种方法(详解二)

    使用Java构造和解析Json数据的两种方法(详解二)

    这篇文章主要介绍了使用Java构造和解析Json数据的两种方法(详解二)的相关资料,需要的朋友可以参考下
    2016-03-03

最新评论