小编Att*_*nen的帖子

IntelliJ IDEA单行函数格式化

IntelliJ保持格式化:

public void addElement(Element elem) {
    this.elements.add(elem);
}
Run Code Online (Sandbox Code Playgroud)

进入这个:

public void addElement(Element elem) { this.elements.add(elem); }
Run Code Online (Sandbox Code Playgroud)

我更喜欢多行格式化.我怎么能告诉IntelliJ?我在设置 - >编辑器 - > Java - >环绕和大括号中取消选中以下框

  • 控制语句在一行中
  • 一行中的简单块
  • 简单的方法在一行

没有帮助.

intellij-idea

51
推荐指数
2
解决办法
2万
查看次数

React-hot-loader:react - 未检测到dom补丁

我在Gatsby项目中更新了一些npm软件包,现在我在控制台中看到了这个警告:

React-hot-loader: react--dom patch is not detected. React 16.6+ features may not work.

但是,当我查看源代码时,有一个评论:

// Actually everything works...

这个警告实际意味着什么?这是我应该解决的问题还是让它成为现实?

reactjs react-hot-loader gatsby

31
推荐指数
4
解决办法
6746
查看次数

IntelliJ IDEA中的Java项目文件夹结构

IntelliJ IDEA中Java项目的可接受文件夹结构是什么?

多个来源(如此)表明以下结构:

 [] .idea    
 [] src
    [] main
      [] java   
           com.simpleproject
             SimpleClass.java
      [] resources
    [] test
      [] java
           com.simpleproject
             SimpleClassTest.java
      [] resources
Run Code Online (Sandbox Code Playgroud)

我知道这之前已经奏效,但现在它正在抱怨 java.lang.SecurityException: Prohibited package name: java

显然,java不允许作为包名.我不明白为什么它有时是可以接受的,有时是不可接受的.有人可以在IntelliJ IDEA的Java项目中提供可接受的项目文件夹结构的完整示例吗?

java intellij-idea

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

LetsEncrypt certbot多个续订钩子

我正在从LetsEncrypt的certbot自动更新SSL证书.实际更新正在运行,但我需要自动重新启动服务,以便加载续订的证书.我想知道你是否可以--renew-hook在cronjob中使用多个参数letsencrypt renew

如何在证书续订时自动重启服务?

lets-encrypt

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

Python垃圾收集有时在Jupyter Notebook中不起作用

我一直在用一些Jupyter笔记本耗尽内存,我似乎无法释放不再需要的内存.这是一个例子:

import gc
thing = Thing()
result = thing.do_something(...)
thing = None
gc.collect()
Run Code Online (Sandbox Code Playgroud)

你可以假设,thing使用大量的内存来做某事,然后我就不再需要了.我应该能够释放它使用的内存.即使它没有写入我可以从我的笔记本访问的任何变量,垃圾收集器也没有正确释放空间.我发现的唯一解决方法是写入resultpickle,重启内核,result从pickle 加载,然后继续.这在运行长笔记本时非常不方便.如何正确释放内存?

python garbage-collection jupyter-notebook

11
推荐指数
2
解决办法
3627
查看次数

当Java Swing应用程序缩放到正常大小时,它在高DPI屏幕上看起来很小

如何使我的Java Swing应用程序GUI适用于高DPI屏幕上的用户?

请参见下面的截图.在顶部,您可以看到应用程序与Ubuntu的文件浏览器图标和gedit相比有多小.在左下角,您可以看到应用程序应该看起来大小的大小(并且可以在常规DPI监视器上查看).因此,我正在寻找一种在使用高DPI监视器时正确扩展应用程序GUI的方法.例如,gedit在常规DPI和高DPI监视器上看起来都相同.我希望我的应用程序像这样.

在此输入图像描述

以下是该应用程序的源代码:https://github.com/baobabKoodaa/baopass

这是影响许多应用程序的极其常见的问题.我在Ubuntu上运行的应用程序大约有一半是在没有用户任何操作的情况下正确缩放的,另一半没有缩放,看起来非常小.请注意,我主要是在寻找一种不需要用户操作的解决方案(虽然目前还有任何帮助 - 我还没有找到任何方法来扩展它).

根据这种缩放应该已经开箱即用.它没有.我不确定这是否是一个错误,或者除了在Java 9上运行应用程序之外还有一些额外的步骤我应该做什么?

java swing highdpi

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

即使对等点可以互相发送 UDP 数据包,WebRTC 也无法连接 P2P

我的印象是,尽管有 NAT,WebRTC 仍竭尽全力实现 P2P 连接。[1][2] 这就是为什么我惊讶地发现 WebRTC 在某些很容易实现 P2P 连接的情况下无法连接对等点。我想了解为什么会发生这种情况,以及我是否可以采取任何措施来改善这种情况。


为什么我说P2P在某些情况下很容易实现呢?我之所以这么说是因为我在不同网络上的两台设备上进行了实验:

  • 设备 F 连接到全锥 NAT 后面的互联网
  • 设备 S 通过对称 NAT 连接到互联网

我可以通过以下方式轻松实现这些设备之间的 P2P 连接:

  1. 设备 F 将连接绑定到随机(不可预测)端口,并通过该端口将 UDP 数据包发送到 Internet 上的任何位置。由于 F 位于全锥 NAT 后面,因此该数据包已“打孔”打开的端口,允许任何外部地址现在通过该端口发送数据包。就我而言,我在本地打开的端口似乎与外部端口相同。(如果外部端口与本地端口不同,我们可以使用 STUN 之类的东西来找出外部端口。)

  2. 设备 S 将连接绑定到随机(不可预测)端口,并通过该端口向设备 F 的外部 IP 和端口发送 UDP 数据包。该数据包可以传送,因为该端口在步骤 1 中已打洞打开。之后数据包时,设备 S 通过自己的端口打洞,允许来自设备 F 的数据包通过它发回。设备F会知道将数据包发送到哪里,因为S发送的数据包包含外部IP和端口。由于设备 S 具有对称 NAT,打洞不会为所有流量打开端口,仅针对来自设备 F 的流量(设备 F 的外部 IP 和端口)。

我使用 Python 来验证我是否能够在这些设备之间打开 P2P 连接并双向发送消息,如上所述。我不明白为什么WebRTC无法实现这样的P2P连接。


为什么我声称 WebRTC 在某些应该很容易连接的情况下无法连接?我之所以这么说是因为我尝试使用 3 个不同的代码示例来实现 WebRTC P2P 连接。当设备位于同一本地网络时,所有示例均有效,但当设备位于不同网络时,所有示例均无效(上述设置)。我尝试过的库都没有提供任何有用的调试信息来找出问题所在,并且 chrome://webrtc-internals 也没有提供任何有用的信息。我还尝试在 …

javascript p2p nat stun webrtc

9
推荐指数
0
解决办法
1303
查看次数

(数组和字符串)Java与C的区别

我知道C和我正在进入Java并且对它的数组和字符串方法感到困惑.它与C中的数组和字符串完全不同.请帮助我理解C和Java之间的区别(对于字符串和数组).

c java

7
推荐指数
3
解决办法
2万
查看次数

找到所有排列以获得给定的总和(硬币找零问题)

我正在尝试解决经典的硬币找零(动态)问题。
为了使用动态方法找到所有独特组合的数量以从无限面额的硬币中获得总和,我使用了以下方法:

/* 
     n - number of coins
     arr[] - coin denominations
     x - total sum
     dp[] - array to store number of combinations at index i.
*/
for (int j = 0; j < n; j++)
     for (int i = 1; i <= x; i++)
          if (arr[j] <= i)
              dp[i] = (long) ((dp[i] + dp[i - arr[j]]) % (1e9 + 7));
Run Code Online (Sandbox Code Playgroud)

这给了我所有唯一可能的combinations计数:
例如:

Input:
n=3 x=9
Coins: 2 3 5

Output:
3
Run Code Online (Sandbox Code Playgroud)

到目前为止,一切都很好。但我观察到,只需交换上面代码片段中的循环,我就得到了所有可能的结果permutations

Input:
n=3 …
Run Code Online (Sandbox Code Playgroud)

java puzzle algorithm dynamic-programming coin-change

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

Numpy/Pandas清除方式来检查特定值是否为NaN

如何检查给定值是否为NaN?

例如if (a == np.NaN)(不起作用)

在您投票之前,请注意:

  • Numpy的isnan方法会抛出像string这样的数据类型的错误
  • Pandas docs仅提供删除包含NaN的行的方法,或者检查DataFrame是否包含NaN的方法.我问的是检查特定值是否为NaN.
  • 相关的Stackoverflow问题和Google搜索结果似乎是关于检查"如果任何值是NaN"或"DataFrame中的哪个值"

必须有一个干净的方法来检查给定的值是否为NaN?

python numpy pandas

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