小编Koe*_*err的帖子

为什么要用"!!!"?

如下代码:

var a = {};
if(!!!a[tabType]){
   a[tabType] = [];
   a[tabType].push([self,boxObj]);
}else{
   a[tabType].push([self,boxObj]);
}
Run Code Online (Sandbox Code Playgroud)

我认为!!! [tabType]等于!a [tabType]为什么要使用"!!!" 不是"!" ?

谢谢!

javascript performance data-structures

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

如何在java正则表达式模式中将"not"与更多字符匹配?

在java正则表达式中,用于[^x]将"not"与一个char匹配.

我想知道,如何匹配更多的字符不?

我使用[^789],这是不对的.

    String text="aa(123)bb(456)cc(789)dd(78)";
    text=text.replaceAll("\\([^789].*?\\)","");

    System.out.println(text);
Run Code Online (Sandbox Code Playgroud)

我想得到的结果是:

aabbcc(789)dd
Run Code Online (Sandbox Code Playgroud)

如何修复我的正则表达式?

非常感谢 :)

java regex

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

如何限制java列表中的条目数?

我知道如何限制 Map 的大小(像这样,使用 LinkedHashMap.removeEldestEntry 方法就是这样做的)

我想知道如何限制列表中的大小,最好的实现方法是什么?

感谢帮助 :)

java

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

为什么hashCode()在将项添加到HashMap之前返回零?

Map map = new HashMap();
System.out.println("hashCode:"+map.hashCode()); //hashcode==0 why?

map.put("test","test");
System.out.println("hashCode:"+map.hashCode()); //hashcode be okay here
Run Code Online (Sandbox Code Playgroud)

我怎样才能获得hashCode Map map = new HashMap();?(如:new Object().hashCode())

java

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

如何为此SQL查询创建索引?

表:

CREATE TABLE `deal` (
  `id` int(11) NOT NULL default '0',
  `site` int(11) NOT NULL default '0',
  `time` bigint(13) NOT NULL default '0',
  PRIMARY KEY  (`id`),
  KEY `site` (`site`),
  KEY `time` (`time`,`site`)
) TYPE=MyISAM
Run Code Online (Sandbox Code Playgroud)

sql查询:

select * from `deal` where time>0 && site=8
Run Code Online (Sandbox Code Playgroud)

我创建索引:time对于此查询,

但为什么这个查询总是使用索引:site

explain select * from `deal` where time>0 && site=8
Run Code Online (Sandbox Code Playgroud)

输出:

table    type    possible_keys   key    key_len    ref   rows   Extra

deal     ref     site,time       site   4          const 1      Using where
Run Code Online (Sandbox Code Playgroud)

mysql sql

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

如何安全地关闭IndexReader?

我的问题很简单,当使用IndexReader.openIfChanged (reader)替换以前reader,如何安全关闭oldReader

这是代码:(使用Lucene 3.5)

IndexReader newReader=IndexReader.openIfChanged(reader);
if(newReader!=null){
    IndexReader oldReader=reader;
    IndexSearcher oldSearcher=searcher;

    reader=newReader;
    searcher=new IndexSearcher(newReader);

    oldSearcher.close();
    oldReader.close();//or oldReader.decRef(),result is the same
}
Run Code Online (Sandbox Code Playgroud)

这个代码在deamon线程中,每5秒运行一次

IndexReaderinstance(readerobject)是全局唯一的

自从这次改变以来,我得到一个例外:

org.apache.lucene.store.AlreadyClosedException: this IndexReader is closed
    at org.apache.lucene.index.IndexReader.ensureOpen(IndexReader.java:297)
    at org.apache.lucene.index.IndexReader.getSequentialSubReaders(IndexReader.java:1622)
    at org.apache.lucene.search.TermQuery$TermWeight.scorer(TermQuery.java:98)
    at org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:298)
    at org.apache.lucene.search.BooleanQuery$BooleanWeight.scorer(BooleanQuery.java:298)
    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:577)
    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:517)
    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:487)
    at org.apache.lucene.search.IndexSearcher.search(IndexSearcher.java:400)
    at org.zenofo.index.IndexManager.query(IndexManager.java:392)
    ...
Run Code Online (Sandbox Code Playgroud)

IndexManager.java:392使用reader对象(IndexReader实例,全局唯一)

IndexManager.query方法有大量的并发请求,所有请求都使用全局唯一的IndexReader实例(reader对象)

在此输入图像描述

我需要关闭oldReader只是因为:

参考:

java lucene

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

如何优化此nginx代理缓存配置?

我想缓存*.htmlNginx反向代理中的所有文件,所以我添加了配置:

# Original configuration
location = / {
    proxy_pass   http://192.168.12.12:91;
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;
}

# Added for cache
location ~ \.html {
    proxy_pass   http://192.168.12.12:91;
    proxy_set_header        Host $host;
    proxy_set_header        X-Real-IP $remote_addr;
    proxy_set_header        X-Forwarded-For $proxy_add_x_forwarded_for;

    proxy_cache cache_one;
    proxy_cache_key $host$uri$is_args$args;
    proxy_cache_valid 200 301 302 1m;
    proxy_cache_valid any 1m;
    expires     1m;
}
Run Code Online (Sandbox Code Playgroud)

重复两次proxy_passproxy_set_header感觉不好

我该如何优化呢?谢谢!

linux ubuntu proxy reverse-proxy nginx

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

如何切换addClass和removeClass?

我的代码:

<a href=# onclick="obj.addClass('fliph'); return false;">toggle</a>
Run Code Online (Sandbox Code Playgroud)

我想点击切换obj.addClass('fliph'),然后再次点击运行obj.removeClass('fliph').

如何修复我的代码?

谢谢大家!:)

javascript jquery

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

在matcher.replace方法中,如何限制更换次数?

matcher.replace方法中,只有: replaceFirst()replaceAll()两种方法

我想限制更换3次,怎么办?

例:

String content="aaaaaaaaaa";
Run Code Online (Sandbox Code Playgroud)

我想得到的结果是: "bbbaaaaaaa"

我的代码:

import java.util.regex.Matcher;
import java.util.regex.Pattern;
public class T1 {
    public static void main(String[] args) {
        String content="aaaaaaaaaa";
        Pattern pattern = Pattern.compile("a");

        Matcher m=pattern.matcher(content);
        if(m.find()){
            String result=m.replaceFirst("b");
            System.out.println(result);
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

谢谢 :)

java regex

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

如何在Java中使用正则表达式修剪&lt;br&gt;标签?

String s="<br /><br /><br /><br /><br />hello world!<br /><br /><br />";
s=s.replaceAll("<br /><br />", "<br />");
System.out.println(s);
//result: <br /><br /><br />hello world!<br /><br />
Run Code Online (Sandbox Code Playgroud)

我想得到 <br />hello world!<br />

怎么做?谢谢 :)

java regex

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