小编Chr*_*ung的帖子

Java.util.Calendar - 自1970年1月1日以来的毫秒数

程序后跟输出.有人请向我解释为什么从1970年1月1日开始的10,000,000毫秒是1969年11月31日.好吧,有人请说明我的假设第一次测试应该从1970年1月1日起产生10,000,000毫秒的时间有什么问题.数字小于10,000,000产生同样的结果.

public static void main(String[] args) {

    String x = "10000000";
    long l = new Long(x).longValue();
    System.out.println("Long value: " + l);

    Calendar c = new GregorianCalendar();
    c.setTimeInMillis(l);
    System.out.println("Calendar time in Millis: " + c.getTimeInMillis());

    String origDate = c.get(Calendar.YEAR) + "-" + c.get(Calendar.MONTH) + "-" + c.get(Calendar.DAY_OF_MONTH);  
    System.out.println("Date in YYYY-MM-DD format: " + origDate);

    x = "1000000000000";
    l = new Long(x).longValue();
    System.out.println("\nLong value: " + l);

    c.setTimeInMillis(l);
    System.out.println("Calendar time in Millis: " + c.getTimeInMillis());

    origDate = c.get(Calendar.YEAR) + "-" + c.get(Calendar.MONTH) …
Run Code Online (Sandbox Code Playgroud)

java calendar

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

如何在Linux/PHP堆栈上将文档转换为PDF?

我想在我的网站上显示文档.服务器托管在Debian机器上.我以为我可以允许上传支持文档,然后使用Linux应用程序或PHP应用程序将文档转换为PDF并在HTML页面中显示.是否有任何API或二进制文件允许我这样做?

php linux pdf

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

用于空白的javascript正则表达式或 

我正在为空白寻找一个javascript正则表达式.我在循环中检查几个不同的字符串,我需要找到其中有大空格的字符串.

白色空格字符串是一个循环,像这样......

请阅读此代码,var whitespace = " "然后循环只会在其上连接更多非破坏空格.

var whitespace = " "

        for (var x = 0; x < 20; x++) {
            whitespace += "&nbsp;"
        }
Run Code Online (Sandbox Code Playgroud)

然后它会在字符串concat中使用.

sometext += whitespace + someData;
Run Code Online (Sandbox Code Playgroud)

我需要识别包含空格(20个空格)的字符串.

或者我应该做一个contains(whitespace)类似的东西.

任何帮助表示赞赏.

干杯,〜在圣地亚哥

javascript regex

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

关于SICP的问题chpt 4.1:(analyze expr)如何帮助加速eval?

我正在阅读SICP的以下部分

http://mitpress.mit.edu/sicp/full-text/book/book-ZH-26.html#%_sec_4.1.7

根据文本,以下eval改进将提高性能,因为多次评估的表达式只会被分析一次?

(define (eval exp env)
    ((analyze exp) env))
Run Code Online (Sandbox Code Playgroud)

这是analyze本书中给出的函数:

(define (analyze-if exp)
(let ((pproc (analyze (if-predicate exp)))
    (cproc (analyze (if-consequent exp)))
        (aproc (analyze (if-alternative exp))))
    (lambda (env)
        (if (true? (pproc env))
            (cproc env)
                (aproc env)))))
Run Code Online (Sandbox Code Playgroud)

我不明白为什么这本书说analyze只会运行一次.没有了身体eval,这是((analyze exp) env))基本上是说,每次eval被调用时,analyze将一个名为exp作为它的参数?这意味着analyze每次调用时eval都会调用它.

我的理解有什么问题?我将不胜感激任何反馈,谢谢!

lisp scheme sicp

8
推荐指数
2
解决办法
400
查看次数

使用try-Catch异常处理程序和if else条件检查之间的区别?

我已经在很多地方使用过if else语句,但是我是异常处理的新手.这两者之间的主要区别是什么......

例如:

 int *ptr = new (nothrow) int[1000];

 if (ptr == NULL) {
     // Handle error cases here...
 }
Run Code Online (Sandbox Code Playgroud)

要么

  try
  {
    int* myarray= new int[1000];
  }
  catch (exception& e)
  {
    cout << "Standard exception: " << e.what() << endl; 
  }
Run Code Online (Sandbox Code Playgroud)

所以我们在这里使用标准类的异常,它有一些像e.what这样的构建函数.所以它可能是有利的......除了所有其他功能处理我们可以使用 - 如果否则 - 也.使用异常处理还有其他优点吗?

感谢名单

c++ if-statement exception-handling

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

动态选择端口号?

在Java中,我需要获取一个端口号,以便在同一程序的多个实例之间进行通信.现在,我可以简单地选择一些固定数字并继续使用它.但我想知道是否有一种方法可以动态选择端口号,这样我就不必为设置端口号而烦扰我的用户.

这是我的一个想法,它的工作原理如下:

  • 有一个固定的初始端口号A.
  • 程序'MyApp'启动,试图抓住端口A.
  • 如果成功,那么它就是'MyApp'的第一个实例.完成.
  • 如果失败,它会通过端口A询问A上的程序是否是"MyApp"的实例.如果是,请与该实例通信.完成.如果没有,请尝试抓住端口A + 1.如果有另一个程序使用该端口(也不是'MyApp'的实例),则抓A + 2,然后抓A + 3,依此类推.

这种策略有意义吗?或者有更好的方法来动态选择端口号吗?

java tcp

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

小Schemer eqlist?功能 - 备用版本?

我正在阅读"Little Schemer"一书,并完成各种功能.一般来说,我最终得到与书籍相同的版本,但不是eqlist ?,这是一个测试两个列表相等的函数.

我已经尝试过测试我的版本,它会传递任何我抛出的东西.然而它与"Little Schemer"版本略有不同,我希望有人对我是否遗漏某些东西持有意见 - 我怀疑是这样的.

我的版本:

(define eqlist?
  (lambda (list1 list2)
    (cond
      ((and (null? list1)(null? list2))#t)
      ((or (null? list1)(null? list2))#f)
      ((and (atom? list1)(atom? list2))(eqan? list1 list2))
      ((or (atom? list1)(atom? list2)) #f)
      (else
        (and(eqlist? (car list1) (car list2))
            (eqlist? (cdr list1) (cdr list2)))))))
Run Code Online (Sandbox Code Playgroud)

这本书的版本:

(define eqlist2? ;This is Little Schemer's version
  (lambda (list1 list2)
    (cond
      ((and (null? list1)(null? list2)) #t)
      ((or (null? list1)(null? list2)) #f)
      ((and (atom? (car list1))(atom? (car list2)))
       (and (eqan? (car list1)(car list2))(eqlist2? (cdr list1)(cdr list2)))) …
Run Code Online (Sandbox Code Playgroud)

scheme the-little-schemer

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

从Python迁移到Racket(正则表达式库和"Racket Way")

我正在尝试学习Racket,并在此过程中尝试重写Python过滤器.我的代码中有以下一对函数:

def dlv(text):
    """
    Returns True if the given text corresponds to the output of DLV
    and False otherwise.
    """
    return text.startswith("DLV") or \
           text.startswith("{") or \
           text.startswith("Best model")

def answer_sets(text):
    """
    Returns a list comprised of all of the answer sets in the given text.
    """
    if dlv(text):
        # In the case where we are processing the output of DLV, each
        # answer set is a comma-delimited sequence of literals enclosed
        # in {}
        regex = re.compile(r'\{(.*?)\}', re.MULTILINE)
    else: …
Run Code Online (Sandbox Code Playgroud)

python regex porting racket

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

"如何将Red应用于此Lisp代码的编译时优化?"

这是我想用Red实现的Lisp代码优化模式:

(defmacro compute-at-compile (x)
  `(+ ,(* pi 2) ,x))

(macroexpand '(compute-at-compile 1))
; => (+ 6.283185307179586 1)
Run Code Online (Sandbox Code Playgroud)

我怎么用红色表达这个?(我意识到在今天的实现中可能无法实现,我想知道如何在语言级别表达代码以获得这样的优化.它是否需要源代码中的特殊标记,还是像Lisp一样自动化? )

lisp compiler-optimization red

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

Java MessageFormat Null值

在Java MessageFormat中处理空值的最佳方法是什么

MessageFormat.format("Value: {0}",null);

=> Value: null
Run Code Online (Sandbox Code Playgroud)

但实际上"价值:"会很好.

与日期相同

MessageFormat.format("Value: {0,date,medium}",null);

=> Value: null
Run Code Online (Sandbox Code Playgroud)

一个"价值:"会更加受到重视.

有没有办法做到这一点?我尝试过选择

{0,choice,null#|notnull#{0,date,dd.MM.yyyy – HH:mm:ss}}
Run Code Online (Sandbox Code Playgroud)

这会导致选择格式无效,检查"null"或"not null"是正确的吗?

java messageformat

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