将List[String, Int]A 转换为List[Int, String]B 的最佳方法是什么.我想使用map函数来遍历列表A中的所有项目然后返回一个新列表B但是每当我在列表A上应用map函数时它就会抱怨错误的参数数量
val listA:List[(String, Int)] = List(("graduates", 20), ("teachers", 10), ("students", 300))
val listB:List[(Int, String)] = listA.map((x:String, y:Int) => y, x)
Run Code Online (Sandbox Code Playgroud)
有什么建议?谢谢
我宣布:
static NSString *a = @"a";
Run Code Online (Sandbox Code Playgroud)
这是iOS6中的正确声明(使用编译器版本应该更正确,但目前我还不知道).我认为数字文字也是:
static NSNumber *b=@1;
Run Code Online (Sandbox Code Playgroud)
可能是一个有效的声明.编译器告诉我initializer element is not a compile time constant.这让我感到惊讶.既然NSNumber是不可变的NSString,因为我在字符串的情况下使用文字,我认为它也可以是有效的.
有没有人对这种差异有合理的解释?
我想把一个Try[Option[T]]变成一个Try[T]
这是我的代码
def flattenTry[T](t: Try[Option[T]]) : Try[T] = {
t match {
case f : Failure[T] => f.asInstanceOf[Failure[T]]
case Success(e) =>
e match {
case None => Failure[T](new Exception("Parsing error"))
case Some(s) => Success(s)
}
}
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的办法 ?
在JSON文件中,文件中的每个对象都由不同类型的JSON元素组成.(整数,字符串,数组,对象数组等)
我的目标是列出所有元素名称和相应的类型.我可以知道如何在Gson中这样做吗?这样做的目的是创建Hive架构.
例:
{
"number": 1,
"ts": "1386848002",
"cmpg": [
{
"id": 476,
"mcp": 0,
"deals": [ ],
"cookie": "uid:123",
"bid": [
{
"bId": 0,
"status": "ZB",
"rmtchID": -1
}
]
}
]
}
Run Code Online (Sandbox Code Playgroud)
输出:
number int,
ts String,
cmpg array<map<String, Object>> // not sure how to interpret this...
Run Code Online (Sandbox Code Playgroud) 我最近开始处理繁重的大量数据,这些数据也需要经过常规交易.
选择Cassandra,我的数据模型使用动态列.我知道使用CQL可以改变表并插入或查询列以获取所需的数据.
但是,我正在使用Phantom客户端和Scala for Cassandra并阅读文档,我找不到写入或查询动态列族的方法.
鉴于我们使用案例类,如何使用Scala中的Cassandra动态列?
如何使用Option monad?我正在浏览scala api并且有一个例子(我的意思是第二个),
由于理解的工作原理,如果从request.getParameter返回None,则整个表达式将导致None
但是当我尝试这段代码时:
val upper = for {
name <- None //request.getParameter("name")
trimmed <- Some(name.trim)
upper <- Some(trimmed.toUpperCase) if trimmed.length != 0
} yield upper
println(upper.getOrElse(""))
Run Code Online (Sandbox Code Playgroud)
我收到编译错误.这应该怎么样?
我正在编写Java代码生成器.
我有一个不可变的Map,它包含从java.sql.Types[Int]到(String, String)第一个值为Java类型的元组的映射,第二个是Java包,如果默认情况下未导入该类型,则从该包导入该类型(java.lang):
val SqlTypesToJavaTypeNames =
Map(Types.BIGINT -> ("Long", None),
Types.BINARY -> ("byte[]", None),
Types.BIT -> ("Boolean", None),
Types.BOOLEAN -> ("Boolean", None),
Types.CHAR -> ("String", None),
Types.DATE -> ("Date", Some("java.sql.Date")),
Types.DECIMAL -> ("BigDecimal", Some("java.math.BigDecimal")),
Types.DOUBLE -> ("Double", None),
Types.FLOAT -> ("Float", None),
Types.INTEGER -> ("Integer", None),
Types.LONGNVARCHAR -> ("String", None),
Types.LONGVARCHAR -> ("String", None),
Types.NCHAR -> ("String", None),
Types.NUMERIC -> ("BigDecimal", None),
Types.NVARCHAR -> ("String", None),
Types.REAL -> ("Float", None),
Types.SMALLINT -> ("Short", None), …Run Code Online (Sandbox Code Playgroud) 我正在编写一个简单的程序,该程序将从MySQL数据库中提取计算机名称,然后将这些名称存储到String数组列表中(这部分工作正常)。之后,我编写了一个类和一个方法,该方法将String作为参数(将是计算机名称),并尝试对其执行ping操作。这是该类的代码:
public class Ping
{
public void pingHost(String hostName)
{
try
{
InetAddress inet = InetAddress.getByName(hostName);
boolean status = inet.isReachable(5000);
if (status)
{
System.out.println(inet.getHostName() + " Host Reached\t" + inet.getHostAddress());
}
else
{
System.out.println(inet.getHostName() + " Host Unreachable");
}
}
catch (UnknownHostException e)
{
System.err.println(e.getMessage() + " Can't Reach Host");
}
catch (IOException e)
{
System.err.println(e.getMessage() + " Error in reaching the Host");
}
}
Run Code Online (Sandbox Code Playgroud)
问题是,UnknownHostException即使我可以手动ping多数计算机,或者将计算机名称硬编码为“ hostName” ,我仍然会被大多数计算机抛出。
这是我的主要样子:
public static void main(String[] args) throws InstantiationException, IllegalAccessException, ClassNotFoundException, …Run Code Online (Sandbox Code Playgroud) 是否有可能Option[Map[String,String]]一次匹配某些键(例如没有嵌套匹配)?
以下片段是现在的样子:
val myOption:Option[Map[String,String]] = ...
myOption match {
case Some(params) =>
params get(key) match {
case Some(value) => Ok(value)
case None => BadRequest
case None => BadRequest
}
Run Code Online (Sandbox Code Playgroud) 为什么方法[NSString stringWithFormat]返回一个id类型?从我期望的名称,它返回一个NSString,而不是一个通用的指针.其他课程遵循这个"规则".例如,[NSNumber numberWithInt]返回a NSNumber,而不是a id.
我认为从工厂方法这样的事实来说甚至都不合理.