小编sc_*_*ray的帖子

Python中的“ C风格”字符串

一个非常普遍的问题是如何反转C样式字符串。根据定义,C样式字符串是一个以null('\ 0')结尾的字符串。使用C(或C ++),可以使用指针来操纵字符串以就地反转其内容。

如果有人问“如何在Python中反转C样式的字符串?”,那么可能的答案是什么?

谢谢

python string null

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

对本地存储库中的依赖关系感到困惑(gradle)

我试图编译和打包我的Java应用程序,但我在尝试指定我的本地存储库时遇到问题,我将在其中使用我的jar作为依赖项.我在'/ home/test/lib'中存储了我的应用程序所需的所有jar.我的build.gradle文件如下所示:

apply plugin:'application'
apply plugin:'java'
apply plugin:'idea'

    def repositoryPath = '/home/test/lib'

    repositories {
        repositoryPath
    }



dependencies {
            "org.springframework:spring-orm:3.0.2.RELEASE"
            "org.springframework:spring-context-support:3.0.2.RELEASE"
            'commons-dbcp:commons-dbcp:1.4'
            'org.apache.ibatis:ibatis-sqlmap:2.3.4.726'
            'commons-dbutils:commons-dbutils:1.3'
            'joda-time:joda-time:1.6'
            'commons-lang:commons-lang:2.5'
            'com.google.collections:google-collections:1.0'
}

jar {
    baseName = 'testJar'
}

mainClassName = "com.some.test.testRunner"
Run Code Online (Sandbox Code Playgroud)

当我运行gradle build时,我得到"package*not exists"错误.

我的假设是gradle没有在我的lib文件夹中找到必需的外部jar.有人可以指出我在这里做错了什么.

谢谢

java jar build javac gradle

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

使用Scala中的Pattern Matching交换数组中的值

我试图解决以下问题从Scala不耐烦.问题如下:

使用模式匹配,编写一个函数交换,交换数组的前两个元素,前提是它的长度至少为2.

我的解决方案是:

def swap(sArr:Array[Int]) = sArr.splitAt(2) match { 
                               case (Array(x,y),Array(z)) => Array(y,x,z)
                               case (Array(x,y),Array()) => Array(y,x)
                               case _ => sArr
                            }
Run Code Online (Sandbox Code Playgroud)

我的问题是第一个案例陈述.我认为它会模式匹配,(Array(1,2),Array(3))而我打算模式匹配(Array(1,2),Array(3,4,5.....))

有人可以指出这是可能的.

谢谢

arrays scala pattern-matching

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

来自喷雾路线的催生演员感到困惑

我正在使用Spray进行一些Http请求处理.对于一个请求,我启动一个actor并将有效负载发送给actor以进行处理,并且在演员完成有效负载之后,我呼吁context.stop(self)演员将演员缠绕下来.这个想法是为了防止演员身上的过度饱和.机.

这就是我设置的方式..

httphandler.scala,我的路线设置如下:

path("users"){
   get{
      requestContext => {
         val userWorker = actorRefFactory.actorOf(Props(new UserWorker(userservice,requestContext)))
        userWorker ! getusers //get user is a case object 
      }
   }
} ~ path("users"){
     post{
       entity(as[UserInfo]){
          requestContext => {
          userInfo => {
             val userWorker = actorRefFactory.actorOf(Props(new UserWorker(userservice,requestContext)))
             userWorker ! userInfo
           }
         }
       }
     }
 }
Run Code Online (Sandbox Code Playgroud)

我的UserWorker演员定义如下:

trait RouteServiceActor extends Actor{
  implicit val system = context.system
  import system.dispatcher
  def processRequest[responseModel:ToResponseMarshaller](requestContex:RequestContext)(processFunc: => responseModel):Unit = {
       Future{
         processFunc
       } onComplete {
          case Success(result) => …
Run Code Online (Sandbox Code Playgroud)

asynchronous scala actor akka spray

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

对字符串进行排序以查明是否存在非唯一字符

最近我遇到了一个问题,要求在没有任何额外缓冲区的情况下找出字符串中的非唯一字符.我将此问题解释为字符串中的字符的就地排序,然后迭代它以便跟踪非唯一字符.

另一个可以具有O(1)空间和O(n ^ 2)运行时间的解决方案是在字符串上有两个"for"循环来跟踪常见的任何字符对.

我需要的是用O(1)空格在至少O(nlogn)时间对字符串进行排序.

是否有一种简单/优雅的方法在O(nlgn)中使用O(1)空间进行就地排序的字符?

language-agnostic sorting algorithm in-place

0
推荐指数
1
解决办法
1336
查看次数

不能在scala中改变对象中的var吗?

我的一个同事向我展示了一个有趣的片段,其中一个对象内声明的var没有被对象的成员变异.如果有人解释为什么这样做会很好.代码如下:

object SomeObject{
  var count = 1
  def addToCount = count + 1
  def printCurrentCount:Unit = {addToCount;println(count)}
}

// Exiting paste mode, now interpreting.

defined module SomeObject

scala> SomeObject.printCurrentCount
1
Run Code Online (Sandbox Code Playgroud)

不应该printCurrentCount打印变异的var计数为2?

scala var object immutability mutation

0
推荐指数
1
解决办法
159
查看次数