一维数组转置java转置可以使用数组转置下标修改来实现,示例如下: {1,2,3,4,5,6}

关于 Java 数组的 12 个最佳方法 - 编程语言 - ITeye资讯
相关知识库:
下面是stackoverflow中关于数组方法的相关问题中,获得最多票数的12个数组操作方法。
1.& 声明一个数组
String[] aArray = new String[5];
String[] bArray = {"a","b","c", "d", "e"};
String[] cArray = new String[]{"a","b","c","d","e"};
2.& 输出一个数组
int[] intArray = { 1, 2, 3, 4, 5 };
String intArrayString = Arrays.toString(intArray);
// print directly will print reference value
System.out.println(intArray);
// [I@7150bd4d
System.out.println(intArrayString);
// [1, 2, 3, 4, 5]
3.& 从一个数组创建数组列表
String[] stringArray = { "a", "b", "c", "d", "e" };
ArrayList&String& arrayList = new ArrayList&String&(Arrays.asList(stringArray));
System.out.println(arrayList);
// [a, b, c, d, e]
4.& 检查一个数组是否包含某个值
String[] stringArray = { "a", "b", "c", "d", "e" };
boolean b = Arrays.asList(stringArray).contains("a");
System.out.println(b);
5.& 连接两个数组
int[] intArray = { 1, 2, 3, 4, 5 };
int[] intArray2 = { 6, 7, 8, 9, 10 };
// Apache Commons Lang library
int[] combinedIntArray = ArrayUtils.addAll(intArray, intArray2);
6.& 声明一个内联数组(Array inline)
method(new String[]{"a", "b", "c", "d", "e"});
7.& 把提供的数组元素放入一个字符串
// containing the provided list of elements
// Apache common lang
String j = StringUtils.join(new String[] { "a", "b", "c" }, ", ");
System.out.println(j);
// a, b, c
8.& 将一个数组列表转换为数组
String[] stringArray = { "a", "b", "c", "d", "e" };
ArrayList&String& arrayList = new ArrayList&String&(Arrays.asList(stringArray));
String[] stringArr = new String[arrayList.size()];
arrayList.toArray(stringArr);
for (String s : stringArr)
System.out.println(s);
9.& 将一个数组转换为集(set)
Set&String& set = new HashSet&String&(Arrays.asList(stringArray));
System.out.println(set);
//[d, e, b, c, a]
10.& 逆向一个数组
int[] intArray = { 1, 2, 3, 4, 5 };
ArrayUtils.reverse(intArray);
System.out.println(Arrays.toString(intArray));
//[5, 4, 3, 2, 1]
11.& 移除数组中的元素
int[] intArray = { 1, 2, 3, 4, 5 };
int[] removed = ArrayUtils.removeElement(intArray, 3);//create a new array
System.out.println(Arrays.toString(removed));
12.& 将整数转换为字节数组
byte[] bytes = ByteBuffer.allocate(4).putInt(8).array();
for (byte t : bytes) {
System.out.format("0x%x ", t);
总的来讲还是比较实用,但是有一点不明白的是,第六点,method(new String[]{"a", "b", "c", "d", "e"}); 内联数组干嘛用呢,还请赐教,另外对于11点,移除数组中的元素,可以转换成list集合后,直接调用remove方法直接删除,jdk中支持按照索引下标删除和元素本身删除!这是我的拙见。内联数组在调用方法需要一个数组参数的时候可以直接在方法内创建,而不需要在外部创建一个变量再来传入。如果只有一个数组参数,使用 String.. 形式的可变长度参数更方便,但是对于需要传入多个数组参数的情况就可以用内联的方式传值第二问,我只能说,转换为List需要消耗更多的资源。。也许现在你不关注这个,但对效率要求非常严格的地方这种方式是有意义的我们可以看看ArrayUtils内部的实现代码:
public static Object[] remove(Object[] array, int index) {
return (Object[]) remove((Object) array, index);
private static Object remove(Object array, int index) {
int length = getLength(array);
if (index & 0 || index &= length) {
throw new IndexOutOfBoundsException("Index: " + index + ", Length: " + length);
Object result = Array.newInstance(array.getClass().getComponentType(), length - 1);
//关键!调用了System.arraycopy方法
System.arraycopy(array, 0, result, 0, index);
if (index & length - 1) {
System.arraycopy(array, index + 1, result, index, length - index - 1);
我们再来看看System.arraycopy是什么东西:
public static native void arraycopy(Object src,
Object dest, int destPos,
int length);
注意,这里是native方法,直接调用内核进行运算,效率不说比转为List快了,甚至比自己遍历一遍数组赋值都快
总的来讲还是比较实用,但是有一点不明白的是,第六点,method(new String[]{"a", "b", "c", "d", "e"}); 内联数组干嘛用呢,还请赐教,另外对于11点,移除数组中的元素,可以转换成list集合后,直接调用remove方法直接删除,jdk中支持按照索引下标删除和元素本身删除!这是我的拙见。
ArrayUtils是他自己写的方法
知道了,叫的这么正式,还以为是什么呢
内联数组是神马?以前没听说过啊
好吧。。是我没看清楚=w=
关于第8个List有个toArray()接口,分为无参数和数组参数两种
//初始准备
String[] strArray = {"aa","bb","cc"};
List&String& stringList = new ArrayList&String&(Arrays.asList(strArray));
String[] newArray1 = new String[stringList.size()];
//输入一个String数组,直接以String数组输出
newArray1 = stringList.toArray(newArray1);
System.out.println(ArrayUtils.toString(newArray1));
//无参数,直接输出Object数组
Object[] newArray2 = stringList.toArray();
System.out.println(ArrayUtils.toString(newArray2));
pangpang514 写道第11,ArrayUtils哪个包下面的?commons-lang
huihai 写道第8个没有看明白,感觉刚开始是一个数组,后面还一个数组啊,有区别吗?重点在数组和list的转换
第11,ArrayUtils哪个包下面的?
第12个是啥意思
第8个没有看明白,感觉刚开始是一个数组,后面还一个数组啊,有区别吗?
徐风子 写道 表示觉得挺好的。
相关资源推荐m. length()
m. length-1
m. length()+1
m. length+1
B m的下标是从0开始的
length --- arrays (int[],
double[], String[]) ---- to know the length of the arrays
length() --- String related Object
(String, StringBuilder etc)to know the length of the String
size() --- Collection Object
(ArrayList, Set etc)to know the size of the Collection
选B。数组有.length方法,String类型是.length()方法,数组下标从0开始。
length属性:数组
length():String
size():集合
数组中有length变量
String类中有length()方法
数组的下标从0开始,对于数组变量,可以通过length属性来获取长度,对于字符串变量可以通过length()函数来获取长度
1.数组的下标是从0 开始的,所以数组的下标最大为5。
2.m.length的值为6。
所以,答案为:5=m.length()-1
B。数组的下标从0开始。
数组.length
字符串.length(), 计算长度时,一个是属性,一个是方法。
数组方法,.length.
字符串方法:.length()
m下标量最大为6对应也是6,m.length=7
下标最大为5是怎么得出来的?
和 length()代表的事元素的个数。length数组的属性
length()是string的方法
数组有length变量,而不是length()方法;
String中有length()方法来获得字符串长度;
选A 吧,题目中说的是 数组下标量
相等, 下标的总数目是m.length(), 下标的最大值才是 m.length()-1
数组下标是从0开始的,所以最后一个元素的下标是数组的长度减一
这道题你会答吗?花几分钟告诉大家答案吧!
扫描二维码,关注牛客网
下载牛客APP,随时随地刷题
浙ICP备号-2
扫一扫,把题目装进口袋}

我要回帖

更多关于 labview一维数组转置 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信