我创建了一个包含100个列表的列表,每个列表具有60个值,我需要通过测试运行列表中保存的所有6000个值(称为“人口”(显示在底部错误中)),我不确定我会怎么做将List<List<double>>
转换为List<double>
,或者我什至可以
答案 0 :(得分:2)
您可以从JSONConfigurator.java:
import javax.json.bind.Jsonb;
import javax.json.bind.JsonbBuilder;
import javax.json.bind.JsonbConfig;
import javax.json.bind.config.PropertyNamingStrategy;
import javax.ws.rs.ext.ContextResolver;
import javax.ws.rs.ext.Provider;
@Provider
public class JSONConfigurator implements ContextResolver<Jsonb> {
@Override
public Jsonb getContext(Class<?> type) {
JsonbConfig config = getJsonbConfig();
return JsonbBuilder
.newBuilder()
.withConfig(config)
.build();
}
private JsonbConfig getJsonbConfig() {
return new JsonbConfig()
.withDateFormat("yyyy-MM-dd'T'HH:mm:ss.SSSXXX", null);
}
}
开始使用import javax.ws.rs.ApplicationPath;
import javax.ws.rs.core.Application;
import java.util.HashSet;
import java.util.Set;
@ApplicationPath("/api")
public class ApplicationConfig extends Application {
@Override
public Set<Class<?>> getClasses() {
Set<Class<?>> resources = new HashSet<Class<?>>();
addRestResourceClasses(resources);
resources.add(JSONConfigurator.class);
return resources;
}
private void addRestResourceClasses(Set<Class<?>> resources) {
...
}
}
,以便展平集合。或者,您可以使用List<double>
进行转换,如下所示:
AddRange
答案 1 :(得分:1)
我看到了您的代码,并认为以下代码可以为您提供帮助。
class Program
{
public static Random _random = new Random();
static void Main(string[] args)
{
List<List<double>> population = new List<List<double>>();
for (int k = 0; k < 100; k++)
{
var gWeights = new List<double>();
for (int i = 0; i < 60; i++)
{
var random = (_random.NextDouble() * 2) - 1;
gWeights.Add(random);
}
population.Add(gWeights);
}
List<double> population2 = new List<double>();
population.ForEach(x => population2.AddRange(x));
GetResult(population2);
Console.ReadKey();
}
public static void GetResult(List<double> items)
{
//your code
}
}