在Java中怎么把ArrayList<> 强行转换为float类型

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了在Java中怎么把ArrayList<> 强行转换为float类型相关的知识,希望对你有一定的参考价值。

public class a
static ArrayList<Side> map = null;

static ArrayList<Integer> redAgg = null;

static ArrayList<Integer> blueAgg = null;

static Side[] parents = null;

public static void main(String[] args)
// 初始化顶点集
int[] nodes = 0, 1, 3, 2, 4, 5,6 ;

// 初始化有向权重图
map = new ArrayList<Side>();
map.add(new Side(0, 1, 10));
map.add(new Side(0, 3, 30));
我想把map.add(new Side(0, 1, 10));
中10的改为12.5 但是数据类型不支持,求高手解答!整个程序写不进来,可用QQ传给你!在线等答案!!!

map = new ArrayList<Side>();
map中只能插入side类型的。而你的side方法不允许使用float。遇到这样的时候一般用泛型,来支持多种类型。强制类型转换会丢失精度。
参考技术A abc是不能转为int或float类型的。但是可以把它们拆分char类型来,在转为ASCII值,不知道这算不算是转为int类型。
如char a=‘a’;
int code = (int)a;
9月

Java 中ArrayList<Object>如何去除其中重复的对象

去掉重复对象的方案很多, 比如利用set去重等.

参考代码

import java.util.ArrayList;
import java.util.HashSet;

public class Test 
public static void main(String[] args) 
ArrayList<Object> list =new ArrayList<Object>();
list.add(8);
list.add(2);
list.add(8);
list.add(7);
list.add(6);
list.add(5);
list.add(2);
list.add(7);
System.out.println("原始集合"+list);

//方案1 . 不考虑list原始顺序的情况下
HashSet<Object> set = new HashSet<Object>(list);//把list作为参数放到HashSet的构造函数里,去掉重复元素
ArrayList<Object> result1= new ArrayList<Object>(set);//把set作为参数放到ArrayList构造函数里
System.out.println(result1);//输出result1


//方案2   考虑list的原始顺序
ArrayList<Object> result2 = new ArrayList<Object>();
for (int i = 0; i <list.size(); i++) 
if(!result2.contains(list.get(i))) //如果没有重复元素 ,才添加进结果集合result2
result2.add(list.get(i));


System.out.println(result2);//输出result2


输出

原始集合[8, 2, 8, 7, 6, 5, 2, 7]
[2, 5, 6, 7, 8]
[8, 2, 7, 6, 5]

参考技术A import java.util.ArrayList;
import java.util.List;

public class ArrayListTest 
public static void main(String[] args) 
/**
 * 定义功能:清除ArrayList集合中的重复元素
 */
List arraylist = new ArrayList();
arraylist.add("test1");
arraylist.add("test2");
arraylist.add("test3");
arraylist.add("test1");
arraylist.add("test2");
arraylist.add("test1");

System.out.println(arraylist);
singleElement(arraylist);
System.out.println(arraylist);


public static void singleElement(List arraylist) 
/**
 * 下面的size是在发生改变的,所以这样每次删除一次的时候都会影响到结果,有些结果是遍历不到的。
 */
for (int i = 0; i < arraylist.size() - 1; i++) 
Object object_x = arraylist.get(i);
for (int j = i + 1; j < arraylist.size(); j++) 
if (object_x.equals(arraylist.get(j))) 
arraylist.remove(j);
j--;




以上是关于在Java中怎么把ArrayList<> 强行转换为float类型的主要内容,如果未能解决你的问题,请参考以下文章

怎么遍历ArrayList中的list呢?

Java ArrayList<String>中有10个元素,怎么在遍历这个集合时把里面的10个元素赋值给10个变量?

java中,如何在二维的ArrayList中添加List

在java中如何把list转换成List<>

在java中怎么把相同时间的金额合并起来

[转]Java中怎样把数组转换为ArrayList