一零一八、记一次var 和 val的区别(偶然发现)
【摘要】
在一次写scala的过程中,偶然间将 var 写成了 val ,发现报错
var avg = 0.00; if (line(4).contains("万/月")) { val min: Double = line(4).split("-")(0).toDouble val ma...
在一次写scala的过程中,偶然间将 var 写成了 val ,发现报错
-
var avg = 0.00;
-
if (line(4).contains("万/月")) {
-
val min: Double = line(4).split("-")(0).toDouble
-
val max: Double = line(4).split("-")(1).substring(0, line(4).split("-")(1).length - 3).toDouble
-
avg = (min + max) / 2;
-
}
-
(line(1), line(2), line(3), avg, line(5), line(6), line(7), line(8), line(9), line(10))
-
}).toDF("jobType", "jobName", "city", "salary", "experience", "education", "companyType", "companyName", "jobwelf", "time")
截图如下:
首先我认为程序没有错误,变量是全局的,数据类型也没有错误,返回值也可以接收到,但变量这里一直是有问题,左思右想,偶然间突然发现 avg的声明 写的是val ,我记着声明是var啊,改成var后,程序健康
原来var和val是有区别的,才学疏浅,没注意过,又一个知识点学到了,如下:
文章来源: tuomasi.blog.csdn.net,作者:托马斯-酷涛,版权归原作者所有,如需转载,请联系作者。
原文链接:tuomasi.blog.csdn.net/article/details/126043455
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)