我是Sublime Text的新手,我确信这是一个天真的问题.在http://www.sublimetext.com/上观看多行选择(2/6幻灯片).绝对喜欢它.
我理解Ctrl (Cmd)+ Shift+ L"多选",这样我们就可以同时进行编辑.但是,在演示中,它们还将所有行合并为1个单行.那是什么捷径?
我用Ctrl+ J但它只删除一次而不是所有出现的新行.
我使用TextPad并使用查找/替换\n
空白空间.但似乎给演示的人使用了某种捷径.
我第一次尝试番石榴,我发现它真的很棒.
我在Spring jdbc模板上执行几个参数化检索查询.DAO(AbstractDataAccessObject
)中的方法是这样的.这里没问题.
public Map<String,Object> getResultAsMap(String sql, Map<String,Object> parameters) {
try {
return jdbcTemplate.queryForMap(sql, parameters);
} catch (EmptyResultDataAccessException e) {
//Ignore if no data found for this query
logger.error(e.getMessage(), e);
}
return null;
}
Run Code Online (Sandbox Code Playgroud)
这是问题所在:
当我用这个方法调用时
getResultAsMap(query, new HashMap<String,Object>(ImmutableMap.of("gciList",gciList)));
Run Code Online (Sandbox Code Playgroud)
它很棒.
但是当我这样做的时候
getResultAsMap(query, Maps.newHashMap(ImmutableMap.of("gciList",gciList)));
Run Code Online (Sandbox Code Playgroud)
编译器不高兴说
The method getResultAsMap(String, Map<String,Object>) in the type AbstractDataAccessObject is not applicable for the arguments (String, HashMap<String,List<String>>)
我做错了什么或者这个投诉的原因是什么?
首先,为蹩脚的问题道歉.我正在虔诚地阅读"不耐烦的斯卡拉"并试图解决所有的练习题(并进行一些极少的探索)
背景: 运动问题就像 - 设置一些你垂涎的小玩意儿的价格图.然后生成第二张具有相同键的地图,价格为10%折扣.
不幸的是,在这一点上,scaladoc的大多数部分对我来说仍然含糊不清但我明白地图函数Map
采用一个函数并在应用函数后返回另一个地图(我猜?) - def map[B](f: (A) ? B): HashMap[B]
.我试过谷歌搜索,但无法得到很多有用的结果map function for Map in scala
:-)
我的问题:
正如在我的变体3中尝试的那样map
,为此目的使用函数是否有任何意义,或者我应该坚持实际解决我的问题的变体2.
代码:
val gizmos:Map[String,Double]=Map("Samsung Galaxy S4 Zoom"-> 1000, "Mac Pro"-> 6000.10, "Google Glass"->2000)
//1. Normal for/yield
val discountedGizmos=(for ((k,v)<-gizmos) yield (k, v*0.9)) //Works fine
//2. Variation using mapValues
val discGizmos1=gizmos.mapValues(_*0.9) //Works fine
//3. Variation using only map function
val discGizmos2=gizmos.map((_,v) =>v*0.9) //ERROR : Wrong number of parameters: expected 1
Run Code Online (Sandbox Code Playgroud) 这是我在Scala上的第一个程序.所以,我希望我能获得愚蠢的免疫力.
代码是对代码段的一行修改Programming in Scala
.
我所做的就是
这样可行.
现在,当我尝试打印每一行以及行的长度时
println (eachLine + ":" + eachLine.length)
Run Code Online (Sandbox Code Playgroud)
它会抛出一个错误.
我从SO中的这个链接中了解到我应该在某个地方添加一个括号.但是在哪里和为什么?
import scala.io.Source
class Loops {
}
object Loops{
def main (args:Array[String]){
printAllLines("Hello123.txt")
}
def printAllLines(fileName:String){
var maxWidth=0
var lineIterator=Source.fromFile(fileName).getLines;
lineIterator.foreach((eachLine:String) =>
println (eachLine + ":" + eachLine.length)
maxWidth=maxWidth.max(eachLine.length) //Compilation ERROR at this line
)
Console.out.println (maxWidth)
}
Run Code Online (Sandbox Code Playgroud)
//这个工作!!
def printAllLinesFor(fileName:String){
var maxWidth=0
for (eachLine<-Source.fromFile(fileName).getLines.toList){
println (eachLine + ":" +eachLine.length)
maxWidth=maxWidth.max(eachLine.length)
}
println (maxWidth)
}
Run Code Online (Sandbox Code Playgroud)
}
错误 …
试图拿起Scala,我正在转换一个小型Java项目.
我有这样的bean类.目标是有两个字段,getter和setter与它一起使用.对于Numbers或者String
,我知道我们可以用'0'或空字符串初始化它.但是,对于类,我不知道用什么来初始化它.据我所知,null
Scala对此不以为然.
class CoreSearchPageResultS extends Serializable {
var wikiHits: SearchResult[WikiSearchHit]=null
var webHits: SearchResult[WebSearchHit]=null
}
Run Code Online (Sandbox Code Playgroud)
相反,我应该像这样初始化它吗?
var wikiHits: SearchResult[WikiSearchHit]=new SearchResult[WikiSearchHit]();
var webHits: SearchResult[WebSearchHit]=new SearchResult[WebSearchHit]();
Run Code Online (Sandbox Code Playgroud)
我理解这意味着在构造函数完成时,构造对象是不必要的.
我尝试了以下代替但是我收到了编译错误.
private var _wikiHits: SearchResult[WikiSearchHit]
def wikiHits:SearchResult[WikiSearchHit]=_wikiHits
def wikiHits_(wikiHits:SearchResult[WikiSearchHit])=_wikiHits=wikiHits
Run Code Online (Sandbox Code Playgroud)
错误:
*类CoreSearchPageResultS需要是抽象的,因为未定义变量_wikiHits [ERROR](注意变量需要初始化才能定义)*
我知道我正在做一些非常愚蠢和令人尴尬的事情.请帮忙.
scala ×3
collections ×1
guava ×1
java ×1
map ×1
spring ×1
sublimetext ×1
sublimetext2 ×1
sublimetext3 ×1