小编Kyl*_*lar的帖子

如何进行JUnit测试等待?

我有一个JUnit测试,我希望等待一段时间,同步.我的JUnit测试看起来像这样:

@Test
public void testExipres(){
    SomeCacheObject sco = new SomeCacheObject();
    sco.putWithExipration("foo", 1000);
    //WAIT FOR 2 SECONDS
    assertNull(sco.getIfNotExipred("foo"));
}
Run Code Online (Sandbox Code Playgroud)

我尝试了Thread.currentThread().wait(),但它抛出了IllegalMonitorStateException(如预期的那样).是否有一些技巧,或者我需要一个不同的显示器?

java junit thread-safety

76
推荐指数
7
解决办法
8万
查看次数

盒子堆叠问题

我在很多地方发现了这个着名的dp问题,但我无法弄清楚如何解决.

您将获得一组n种类型的矩形3-D盒子,其中第i个盒子具有高度h(i),宽度w(i)和深度d(i)(所有实数).你想要创建一个尽可能高的盒子堆叠,但如果下盒子的2-D底座的尺寸都严格大于2的盒子,你只能在另一个盒子的顶部堆叠一个盒子.高架子的D基座.当然,您可以旋转一个框,以便任何一侧作为其基础.也允许使用相同类型的盒子的多个实例.

这个问题对我来说似乎太复杂了.因为它是3D,我得到三个高度,宽度和深度序列.但是因为有可能交换3维,问题对我来说变得更加复杂.所以请有人解释在没有交换时解决问题的步骤,然后在交换时如何解决问题.我对这个问题感到厌倦.所以,请有人解释解决方案的简单方法.

algorithm dynamic-programming

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

如何识别byte []的内容是jpeg?

我有一个小字节数组(25K以下),我收​​到并解码为更大的消息信封的一部分.有时这是一个图像,当它是图像时,有时它是一个jpg.我没有字节数组以外的上下文信息,并且需要识别它是否是图像,以及图像是否为jpg类型.

是否有一些神奇的数字或魔术字节存在于开头,结尾或某些偏移处,我可以看一下来识别它?

我的代码示例如下(来自内存,而不是c/p):

byte[] messageBytesAfterDecode = retrieveBytesFromEnvelope();
if(null != messageBytesAfterDecode && messageBytesAfterDecode > 0){
    if(areTheseBytesAJpeg(messageBytesAfterDecode)){
        doSomethingWithAJpeg(messageBytesAfterDecode)
    }else{
        flagEnvelopeAsHavingBadContentInTheField();
    }
}
Run Code Online (Sandbox Code Playgroud)

我真的需要做什么

areTheseBytesAJpeg(byte[] mBytes){}
Run Code Online (Sandbox Code Playgroud)

方法,甚至指向详细说明的规范的指针.我希望有一个非常快速的方法来做出这个决定,因为我真的不想把它们读成图像等.

java jpeg image

30
推荐指数
4
解决办法
3万
查看次数

如何防止Android返回对我的HTTP请求的缓存响应?

我正在编写一个客户端,它正在对xml数据进行重复的http请求,这些请求随时间而变化.看起来Android堆栈正在缓存我的页面请求并重复返回同一页面.我如何确保每次都获得一个新页面?

- 代码---

HttpClient client = new DefaultHttpClient();
HttpGet request = new HttpGet(url);
HttpResponse response;
    response = client.execute(request);

InputStream in;
in = response.getEntity().getContent();
BufferedReader reader = new BufferedReader(new InputStreamReader(in));
Run Code Online (Sandbox Code Playgroud)

谢谢,格里

android http no-cache httprequest

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

'extends Object'有目的还是多余?

在互联网上关于使用Java进行Soap开发的教程之后,我找到了这个链接,我自己编写了一个相当不寻常的代码.

代码:

public class SoapService extends Object {

    /** Creates new SoapService */
    public SoapService() {
    }

/** This is the SOAP exposes method
*/
    public String sayGreeting(String name)
    {
        return "Hello "+name;
    }
}
Run Code Online (Sandbox Code Playgroud)

什么是'extends Object'语法?我从未遇到过这种语法(仅限Generics).

这种语法有什么用途还是"简单愚蠢"?

java

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

Singleton模式结合了延迟加载和线程安全性

我正在做一些关于单身人士的研究,特别是关于单身人士的懒惰与急切初始化.

急切初始化的一个例子:

public class Singleton
{
    //initialzed during class loading
    private static final Singleton INSTANCE = new Singleton();

    //to prevent creating another instance of Singleton
    private Singleton(){}

    public static Singleton getSingleton(){
        return INSTANCE;
    }
}
Run Code Online (Sandbox Code Playgroud)

但如上所示,它是急切的初始化和线程安全留给jvm但现在,我希望有相同的模式,但延迟初始化.

所以我想出了这个方法:

public final class Foo {
    private static class FooLoader {
        private static final Foo INSTANCE = new Foo();
    }
    private Foo() {
        if (FooLoader.INSTANCE != null) {
            throw new IllegalStateException("Already instantiated");
        }
    }
    public static Foo getInstance() {
        return FooLoader.INSTANCE;
    }
}
Run Code Online (Sandbox Code Playgroud)

如上图所示 …

java singleton design-patterns

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

尝试将String编码/解码为Base64时出错

我需要从字节数组进行Base64编码,而不是另一个字节数组.但当我解码它时,我得到例外.这是代码

我正在尝试使用Base64编码将字节数组编码为字符串.当我编码时,它似乎工作,但当我解码它会引发异常.我究竟做错了什么?

import org.springframework.security.crypto.codec.Base64;

byte[] bytes = new byte[]{1,2,3,4,5,6,7,8,9};
String stringToStore = Base64.encode(bytes).toString();
byte[] restoredBytes = Base64.decode(stringToStore.getBytes());
Run Code Online (Sandbox Code Playgroud)

这是我得到的例外:

org.springframework.security.crypto.codec.InvalidBase64CharacterException: Bad Base64 input character decimal 91 in array position 0
at org.springframework.security.crypto.codec.Base64.decode(Base64.java:625)
at org.springframework.security.crypto.codec.Base64.decode(Base64.java:246)
Run Code Online (Sandbox Code Playgroud)

java base64

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

检查包是否存在

如何在我的java安装中检查是否存在javax.servlet.*这样的包?

java reflection

11
推荐指数
3
解决办法
9317
查看次数

JScrollPane中JPanel上的JTextArea没有正确调整大小

我想实现以下目标:

+------------------Other container(s)-----------------+
|        +------JScrollPane (vertical)-------+        |
|        | JTextField                        |        |
|        | Box.createRigidArea (vertical)    |        | 
|        | JTextArea                         |        |
|        | { etc.. any other J-component }   |        |
|        |                                   |        |
|        |                                   |        |
|        |                                   |        |
|        |                                   |        |
|        +-----------------------------------+        |
+-----------------------------------------------------+
Run Code Online (Sandbox Code Playgroud)

我能得到的最接近的是以下(伪)代码:

JPanel container = new JPanel(new BorderLayout());
JPanel innerContainer = new JPanel();
innerContainer.setLayout(new BoxLayout(_innerContainer, BoxLayout.Y_AXIS));
JScrollPane scrollPane = new JScrollPane(innerContainer);
container.add(scrollPane, BorderLayout.NORTH);
Run Code Online (Sandbox Code Playgroud)

每当我想添加组件时,它们都会添加到内部容器中:

innerContainer.add(new JTextField());
innerContainer.add(Box.createRigidArea(new Dimension(0, …
Run Code Online (Sandbox Code Playgroud)

java swing awt jscrollpane jtextarea

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

创建一组随机JPG

这是场景,我想创建一组随机的小jpg - 大小在50字节到8k之间 - 只要它们有效,jpeg的实际可视内容就无关紧要了.我需要生成一千个左右,它们都必须是唯一的 - 即使它们只是一个像素不同.我可以在那里写一个jpeg页眉/页脚和一些随机字节吗?我无法使用网络上的现有照片或照片集.

第二个问题是每次运行程序时图像集必须不同.

我更喜欢在python中这样做,因为包装脚本是在Python中.

我已经寻找python代码从头开始生成jpg,并没有找到任何东西,所以指向库的指针同样好.

python jpeg

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