而不是有一个复选标记的图标,我想要一个自定义的明星(我已经检查和取消选中的图标)。 这可以通过一个属性来完成吗? 或者我必须声明一个派生自checkbox的自定义小部件?
我经常遇到一个Java lambdaexpression式的问题,当我想在一个对象的任意属性或方法上使用distinct()stream时,但是想保留该对象而不是将其映射到该属性或方法。 我开始创build这里讨论的容器,但是我已经开始做足够多的工作,变得烦人,并且做了很多样板类。 我把这个Pairing类放在一起,这个类包含两个types的两个对象,并允许你指定closures左边,右边或两个对象。 我的问题是…真的没有内置的lambdastream函数distinct()在某种关键供应商? 那真让我感到吃惊。 如果不是,这个class级能否可靠地履行这个职能? 这是如何被调用的 BigDecimal totalShare = orders.stream().map(c -> Pairing.keyLeft(c.getCompany().getId(), c.getShare())).distinct().map(Pairing::getRightItem).reduce(BigDecimal.ZERO, (x,y) -> x.add(y)); 这是配对类 public final class Pairing<X,Y> { private final X item1; private final Y item2; private final KeySetup keySetup; private static enum KeySetup {LEFT,RIGHT,BOTH}; private Pairing(X item1, Y item2, KeySetup keySetup) { this.item1 = item1; this.item2 = item2; […]
我有一个有关Person的信息的类,看起来像这样: public class Contact { private String name; private String location; private String address; private String email; private String phone; private String fax; public String toString() { // Something here } // Getters and setters. } 我想toString()返回this.name +" – "+ this.locations + …为所有variables。 我试图用这个问题所示的reflection来实现它,但我无法打印实例variables。 什么是解决这个问题的正确方法?
我有一个自定义标签的文件,我想编写一个正则expression式来提取标签之间的string。 例如,如果我的标签是: [customtag]String I want to extract[/customtag] 我如何写一个正则expression式来提取标签之间的string。 这段代码似乎是朝着正确方向迈出的一步: Pattern p = Pattern.compile("[customtag](.+?)[/customtag]"); Matcher m = p.matcher("[customtag]String I want to extract[/customtag]"); 不知道下一步该怎么做。 有任何想法吗? 谢谢。
鉴于: String input = "one two three four five six seven"; 是否有一个正则expression式可以与String.split()一起抓取(最多)两个单词,例如: String[] pairs = input.split("some regex"); System.out.println(Arrays.toString(pairs)); 结果如下: [one two, three four, five six, seven] 这个问题是关于分裂正则expression式 。 这不是 “寻找解决办法”或其他“以另一种方式工作”的解决scheme。
在过去的几年中,我一直认为在Java中,reflection在unit testing中被广泛使用。 由于一些必须检查的variables/方法是私人的,因此需要读取它们的值。 我一直认为Reflection API也用于这个目的。 上周我不得不testing一些包,因此写了一些JUnittesting。 和往常一样,我使用Reflection来访问私有字段和方法。 但是,我的主pipe检查了代码并不是很满意,并告诉我Reflection API不是用来做这种“黑客行为”的。 相反,他build议修改生产代码中的可视性。 使用reflection真的是不好的做法吗? 我不能相信 – 编辑:我应该提到,我被要求,所有的testing都在一个单独的包称为testing(所以使用受保护的visibilty,例如也不是一个可能的解决scheme)
我想要访问一个首先需要(tomcat服务器)validation的站点,然后使用POST请求login,并让该用户查看该站点的页面。 我使用Httpclient 4.0.1 第一个身份validation正常工作,但不是总是抱怨这个错误的login:“302 Moved Temporarily” 我保持cookies&我保持一个上下文,但什么也没有。 实际上,这个login看起来很有效,因为如果我写了不正确的参数或用户||密码,我就看到了login页面。 所以我猜测什么是不工作的自动redirect。 我的代码,总是抛出IOException,302: DefaultHttpClient httpclient = new DefaultHttpClient(); CookieStore cookieStore = new BasicCookieStore(); httpclient.getParams().setParameter( ClientPNames.COOKIE_POLICY, CookiePolicy.BROWSER_COMPATIBILITY); HttpContext context = new BasicHttpContext(); context.setAttribute(ClientContext.COOKIE_STORE, cookieStore); //ResponseHandler<String> responseHandler = new BasicResponseHandler(); Credentials testsystemCreds = new UsernamePasswordCredentials(TESTSYSTEM_USER, TESTSYSTEM_PASS); httpclient.getCredentialsProvider().setCredentials( new AuthScope(AuthScope.ANY_HOST, AuthScope.ANY_PORT), testsystemCreds); HttpPost postRequest = new HttpPost(cms + "/login"); List<NameValuePair> formparams […]
我正在寻找一个Java库,可以通知我有关文件系统的变化。 我发现了一些免费的库,但他们都使用暴力检测,即定期轮询。 而其他的一直都是商业的。 我正在寻找的是一个库,它使用操作系统的文件监视器function,例如Win32的FindFirstChangeNotification ,Linux的FAM以及其他操作系统上的任何其他操作系统。 我不介意使用蛮力作为回退,但是对于Windows和Linux,它应该使用可用的操作系统function。
我需要自动适合大(30k +行)xlsx文件中的所有行。 下面的代码通过apache poi在小文件上工作,但是在大文件上出现OutOfMemoryError : Workbook workbook = WorkbookFactory.create(inputStream); Sheet sheet = workbook.getSheetAt(0); for (Row row : sheet) { row.setHeight((short) -1); } workbook.write(outputStream); 更新:不幸的是,增加堆大小不是一个选项 – OutOfMemoryError出现在-Xmx1024m和30k行不是一个上限。
我读过,我们应该总是从一个循环内调用wait() : while (!condition) { obj.wait(); } 它工作正常,没有一个循环,为什么呢?