小编Jer*_*erg的帖子

如何使用IntelliJ格式化包装代码?

我无法在IntelliJ中格式化我的代码.

我可以看到边距线(默认为120列),但似乎从菜单激活:

代码 - >重新格式化代码

只是忽略了这个边际.

code-formatting intellij-idea

128
推荐指数
5
解决办法
9万
查看次数

java.lang.IncompatibleClassChangeError:使用ScalaCheck和ScalaTest实现类

在尝试使用ScalaCheck和ScalaTest编写测试时,我遇到了一个令人讨厌的异常.这是我的依赖:

libraryDependencies ++= Seq(
  "org.scalatest" %% "scalatest" % "2.2.6" % "test",
  "org.scalacheck" %% "scalacheck" % "1.13.0" % "test"
) 
Run Code Online (Sandbox Code Playgroud)

这是我的测试:

import org.scalatest.PropSpec
import org.scalatest.prop.Checkers

class MyPropSpec extends PropSpec with Checkers {

  property("List.concat") {
    check((a: List[Int], b: List[Int]) => a.size + b.size == (a ::: b).size)
  }
}
Run Code Online (Sandbox Code Playgroud)

当我尝试运行这个时,我得到:

DeferredAbortedSuite:
 Exception encountered when attempting to run a suite with class name:      org.scalatest.DeferredAbortedSuite *** ABORTED ***
     java.lang.IncompatibleClassChangeError: Implementing class
     at java.lang.ClassLoader.defineClass1(Native Method)
     at java.lang.ClassLoader.defineClass(ClassLoader.java:760)
     at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:142)
     at java.net.URLClassLoader.defineClass(URLClassLoader.java:467)
     at java.net.URLClassLoader.access$100(URLClassLoader.java:73)
     at java.net.URLClassLoader$1.run(URLClassLoader.java:368) …
Run Code Online (Sandbox Code Playgroud)

scala scalatest scalacheck

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

泛型默认构造函数Java

public class Sample<T>{

 T data;

   Sample(){

     data = ????;

  }

}
Run Code Online (Sandbox Code Playgroud)

如何为数据分配默认值?

java generics

9
推荐指数
2
解决办法
6497
查看次数

如何使用普罗米修斯警报管理器抑制营业时间以外的警报?

我们的应用程序依赖于仅在工作时间内处于活动状态的数据源。我们在 Prometheus 中设置了警报,以在数据流干涸时通知我们。但是,我们不希望在工作时间以外收到“错误”警报。

我按照这篇文章设置了一个“假警报”,它会在非工作时间触发并且应该禁止所有其他警报。

设置如下所示。在普罗米修斯中:

rules:

# This special alert will be used to inhibit all other alerts outside business hours
- alert: QuietHours
  expr: day_of_week() == 6 or day_of_week() == 0 or europe_amsterdam_hour >= 18 or europe_amsterdam_hour <= 7
  for: 1m
  labels:
    notification: page
    severity: critical
  annotations:
    description: 'This alert fires during quiet hours. It should be blackholed by Alertmanager.'
Run Code Online (Sandbox Code Playgroud)

europe_amsterdam_hour函数被定义为规则,为了简洁起见,本示例中省略了该函数。

在警报管理器中:

routes:
# ensure to forward to blackhole receiver during quiet hours
- match: …
Run Code Online (Sandbox Code Playgroud)

prometheus prometheus-alertmanager

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

Scala - 如何在没有模式匹配的情况下对元组列表进行分组?

考虑以下结构(实际上结构有点复杂):

case class A(id:String,name:String) {
   override def equals(obj: Any):Boolean = {
      if (obj == null || !obj.isInstanceOf[A]) return false
      val a = obj.asInstanceOf[A]
      name == a.name
   }

   override def hashCode() = {
      31 + name.hashCode
   }
}

val a1 = A("1","a")
val a2 = A("2","a")
val a3 = A("3","b")
val list = List((a1,a2),(a1,a3),(a2,a3))
Run Code Online (Sandbox Code Playgroud)

现在让我们说我想将所有元组分组为相同的A. 我可以像这样实现它

list.groupBy {
  case (x,y) => (x,y)
}
Run Code Online (Sandbox Code Playgroud)

但是,我不喜欢在这里使用模式匹配,因为它不会在这里添加任何内容.我想要一些简单的东西,比如:

list.groupBy(_)
Run Code Online (Sandbox Code Playgroud)

不幸的是,这不编译.我甚至不这样做:

list.groupBy[(A,A)](_)
Run Code Online (Sandbox Code Playgroud)

有什么建议如何简化我的代码?

scala tuples group-by

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

java中一组长度数组的抽象方法?

我正在尝试创建一个抽象数组方法,指定数组的这个抽象对象只能容纳3个项目.

现在我已经尝试过这样的事情,public abstract BaseAdapter[3] adapters();但它抱怨一个错误,它不能这样做.

是他们的另一种方式还是我需要做的public abstract BaseAdapter[] adapters();

这样可以正常工作但是子类仍然可以传递大于3个项目的数组

java arrays abstract-class

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