Hive获取array数组长度

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hive获取array数组长度相关的知识,希望对你有一定的参考价值。

参考技术A 有一个表 user_cook_recommed(用户推荐菜谱),用sqoop从mysql导入Hive中,表中有一个字段为array形式,导入到hive中变为String类型,如 4321,4532,337(string),现在需要获得这个array的长度

由于array传入到hive中变为string,需要先用split方法分解为array,再使用size()函数处理

Array / 获取数组的长度 /和遍历输出

获取数组长度的格式;  

数组名称:length;

 

这将会得到一个int数字,代表数组的长度。

数组一旦创建,程序运行期间,长度不可改变,除非赋值变量才能改变。

 

public static main (String [ ] args){

  int [ ] arrayA = new {10,20,30,40,50,60,66,346,376,24,623,};

  int len = arrayA.length;

  sout................("arrayA数组的长度是:" + len);  //11咯。

  

  int [ ] arrayB = new int [ 3 ];

  sout ............................(arrayB.length);//3

  arrayB = new int [ 5 ];       //这是新创建一个数组,从而int [ 3 ] 变成 int [ 5 ]。

  sout.............................(arrayB.length);//5

 

 

}

 

============================================================

遍历数组; 说的就是对数组当中的每一个元素进行逐一,挨个处理,默认的处理方式就是打印输出。

 

举例;

public static void main (Sting[ ] args){

  int [ ]  array = {19,45,35,256,62,24,22,62,245,56};

  //原始方式

  sout..........................(array[ 0 ]);//19

        。

        。

        。

        。

sout .................................(array[ 9 ]);//56

//使用循环,次数其实就是数组的长度。

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

  sout .........................(array[ i ] );

   }

 

//优化后:

for (int i = 0;   i <array.length; i++){

  sout.....................(array[ i ] );

}

 

 

}

 

以上是关于Hive获取array数组长度的主要内容,如果未能解决你的问题,请参考以下文章

php 怎样获取二维数组长度

微信小程序 获取数组长度

C#中如何获取一个二维数组的两维长度,即行数和列数?以及多维数组各个维度的长度?

Java获取二维数组行列长度

python 如何获取数组(列表)长度? len()

Java中如何获取多维数组的长度