小编gia*_*olo的帖子

Scala - 如何使用map将类型(A,B)的元组列表转换为类型(B,A)

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)

有什么建议?谢谢

scala

6
推荐指数
2
解决办法
2538
查看次数

为什么NSNumber文字不能用于静态声明

我宣布:

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,因为我在字符串的情况下使用文字,我认为它也可以是有效的.

有没有人对这种差异有合理的解释?

static objective-c nsnumber ios ios6

6
推荐指数
1
解决办法
4389
查看次数

如何展平试试[选项[T]]

我想把一个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)

有没有更好的办法 ?

scala scala-option

6
推荐指数
1
解决办法
1094
查看次数

如何使用Gson获取JSON元素类型?

在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)

java arrays json hive gson

6
推荐指数
1
解决办法
1万
查看次数

如何在Phantom for Cassandra中使用和查询动态列族?

我最近开始处理繁重的大量数据,这些数据也需要经过常规交易.

选择Cassandra,我的数据模型使用动态列.我知道使用CQL可以改变表并插入或查询列以获取所需的数据.

但是,我正在使用Phantom客户端和Scala for Cassandra并阅读文档,我找不到写入或查询动态列族的方法.

鉴于我们使用案例类,如何使用Scala中的Cassandra动态列?

scala cassandra phantom-dsl

6
推荐指数
1
解决办法
507
查看次数

scala中的选项monad

如何使用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)

我收到编译错误.这应该怎么样?

monads scala scala-option

5
推荐指数
2
解决办法
1844
查看次数

Scala选项[(A,B)]模式匹配

我正在编写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)

scala pattern-matching scala-option

5
推荐指数
2
解决办法
1503
查看次数

在Java中按名称ping计算机

我正在编写一个简单的程序,该程序将从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)

java ping

5
推荐指数
1
解决办法
5481
查看次数

如何一次匹配选项图值?

是否有可能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)

scala scala-option

5
推荐指数
1
解决办法
1101
查看次数

NSString stringWithFormat返回类型,为什么它是"id"?

为什么方法[NSString stringWithFormat]返回一个id类型?从我期望的名称,它返回一个NSString,而不是一个通用的指针.其他课程遵循这个"规则".例如,[NSNumber numberWithInt]返回a NSNumber,而不是a id.

我认为从工厂方法这样的事实来说甚至都不合理.

static-methods nsstring stringwithformat ios

5
推荐指数
2
解决办法
505
查看次数