Java 演员名单<;行>;列出<;长期>;在爪哇
我查询了cassandra表并选择了当前时间,如下所示:Java 演员名单<;行>;列出<;长期>;在爪哇,java,apache-spark,cassandra,Java,Apache Spark,Cassandra,我查询了cassandra表并选择了当前时间,如下所示: Dataset getTime = spark.sql("select current_time from trafficdata where current_time between "+ time1 +" and "+ time2 ); getTime.show(); List<Rows> list = getTime.collectAsList(); Dataset getTime=spark.sql(“从tra
Dataset getTime = spark.sql("select current_time from trafficdata where current_time between "+ time1 +" and "+ time2 );
getTime.show();
List<Rows> list = getTime.collectAsList();
Dataset getTime=spark.sql(“从trafficdata中选择当前时间,其中当前时间介于“+time1+”和“+time2”)之间);
getTime.show();
List=getTime.collectAsList();
我想将此
列表
转换为列表
。有人知道怎么做吗?你不能这样做,因为List
和List
之间没有继承关系
您必须阅读一些内容,从您的描述中有几点不清楚,但我假设您没有运行java 8,并且当前时间是日期时间类型。 因此:
ArrayList newlist=new ArrayList();
对于(日期时间d:列表){
add(d.getMillis());
}
返回newlist;
您知道如何从行中提取long
值吗?如果是,您可以使用
final List<Long> timeList = getTime.collectAsList()
.stream()
.map(r -> getLongValue())
.collect(Collectors.toList());
final List timeList=getTime.collectAsList()
.stream()
.map(r->getLongValue())
.collect(Collectors.toList());
假设您将getLongValue
函数替换为实际函数。您不能将List
强制转换为List
,但可以将其转换
有一件事:Dataset.collectAsList
返回List
,对于Dataset
,它将是List
,而不是List
——可能是打字错误
你可以做:
List<Long> longs = new ArrayList<>();
for(Row row : list) {
longs.add(row.getLong(0));
}
List longs=new ArrayList();
用于(行:列表){
longs.add(row.getLong(0));
}
Java 8流选项:
List<Long> longs = list.stream().map(row -> row.getLong(0)).collect(Collectors.toList());
List longs=List.stream().map(row->row.getLong(0)).collect(collector.toList());
rows元素是否有id,并且该id是否为Long类型元素我正在运行java 8,当前\u时间很长。for循环给出了不兼容的错误类型。必需:org.apache.spark.sql.Row found java.util.Long
List<Long> longs = list.stream().map(row -> row.getLong(0)).collect(Collectors.toList());