为了账号安全,请及时绑定邮箱和手机立即绑定

使用 lambda 表达式时无法解析方法“split(java.lang.String)”

使用 lambda 表达式时无法解析方法“split(java.lang.String)”

白猪掌柜的 2023-03-17 13:42:58
我正在尝试使用 lambda 表达式拆分 String 数组。但是它告诉我拆分方法无法解析。我这样做是为了将 String 类型的 Java Spark RDD 解析为 double。JavaRDD parsedData = data.map(s -> {                String[] sarray = s.split(" ");                double[] values = new double[sarray.length];                for (int i = 0; i < sarray.length; i++) {                    values[i] = Double.parseDouble(sarray[i]);                }                return Vectors.dense(values);            });            parsedData.cache();
查看完整描述

1 回答

?
达令说

TA贡献1821条经验 获得超6个赞

如果像评论中所说的那样, data 是 type Stream<Object>,那么这段代码应该可以完成这项工作:


JavaRDD parsedData = data.map( o -> o.toString() )

    .map( s -> 

    {

        String[] sarray = s.split( " " );

        double[] values = new double [sarray.length];

        for( int i = 0; i < sarray.length; i++ ) 

        {

            values[i] = Double.parseDouble( sarray[i] );

        }

        return Vectors.dense( values );

    });

    parsedData.cache();


查看完整回答
反对 回复 2023-03-17
  • 1 回答
  • 0 关注
  • 126 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信