java怎么创建一个float类型的ArrayList,然后怎么把这个ArrayList转换成float数组。谢谢
4个回答
展开全部
不可以直接转换的,float是基本类型,
arraylist里面存储的是对象。。
可以转换为Float数组
List<Float> list = new ArrayList<Float>();
Float[] ary = list.toArray(new Float[0]);
arraylist里面存储的是对象。。
可以转换为Float数组
List<Float> list = new ArrayList<Float>();
Float[] ary = list.toArray(new Float[0]);
追问
你好,感谢你的回答。请问Float跟float是一样的吗?比如说我有两个数组,一个是float类型一个是Float,那么这两个数组是一样的吗?谢谢
追答
Float是对象数组,float是基本类型数组,
两个数组存储的对象不一样
当你声明一个数组
Float[] a = new Float[2];的时候a[0] = null;此时a[0]没有分配实际内存
float[] b = new float[3];的时候b[0] = 0.0F,//此时内存区域存放的是0,有实际内存分配了
Float转换为float的时候,可以利用
for(int i = 0; i < a.length; i++){
b[i] = a[i].floatValue();
}
明白了没有?
展开全部
ArrayList<Float> al = new ArrayList<Float>();
float[] fs = new Object() {
float[] toFloatValues() {
float[] fs = new float[al.size()];
int i = 0;
for (float f : al) {
fs[i] = f;
i++;
}
return fs;
}
}.toFloatValues();
xxx(fs);
static void xxx(float[] fs) {...}
//Java不自带,咱就自己写呗。。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
List<Float> fl = new ArrayList<Float>(); // 泛型,这ArrayList只能放Float类型
fl.add(1.0f);
Float[] f = new Float[fl.size()];
for (int i = 0; i < fl.size(); i++) {
f[i] = fl.get(i);
}
System.out.println(f.length);
fl.add(1.0f);
Float[] f = new Float[fl.size()];
for (int i = 0; i < fl.size(); i++) {
f[i] = fl.get(i);
}
System.out.println(f.length);
更多追问追答
追问
你好,感谢你的回答。我想问一下不能通过一条语句就直接转换吗?不要for。类似于ToArray之类的。谢谢
追答
楼下的方法我试了一下,的确可以直接转,呵呵
Float其实就是对float一种类型的封装吧,我是这么理解的。float是基本类型,而Float是一个类,类是有自己的成员和方法的,比如说Float类型的变量可以直接转成String类型,只要点出toString()方法,而float类型的变量就不行。更新你就去找找装箱和拆箱的资料,会让你知道得更多
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
Float和float就值来讲是一样的,但是有一点很明确的就是Float可能为空,但是float就不会.
追问
你好,感谢你的回答。但是我有一个方法是需要传入一个float[]的,我传入Float[]的时候它提示不能转换。我想用强制转换也不行,请问有什么方法可以把Float[]转换成float[]吗?谢谢
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |