小编Jak*_*ake的帖子

Objective-C/Cocoa:代表和控制器的正确设计

考虑以下常见情况:

MainView的Cocoa应用程序中有一些是从NIB加载的,它由a控制MainViewController.你MainView包含一些控件,比如a UILabel infoLabel.您还有一个委托MyDelegate类,它接收某种事件.

您希望确保在MyDelegate收到其事件时,infoLabel已适当更新.但是,问题是MyDelegate没有引用MainViewMainViewController不知道标签.

一种解决方案是传递MainViewController对委托对象的引用,但这感觉不对,因为您可能会发现自己处于对象具有彼此引用的不良情况.

解决这个问题的正确设计是什么?

cocoa objective-c touch

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

我想有效地将​​正则表达式应用于整个文件

我有一个复杂的正则表达式,我想将它与整个巨大文件的内容相匹配.主要关注的是效率,因为文件确实非常大并且内存不足是一种明显的可能性.

有没有办法我可以通过正则表达式匹配器以某种方式"缓冲"内容?

java regex

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

Date.getTime()不包括时间?

无法理解为什么会发生以下情况:

String date = "06-04-2007 07:05";
SimpleDateFormat fmt = new SimpleDateFormat("MM-dd-yyyy HH:mm");
Date myDate = fmt.parse(date); 

System.out.println(myDate);  //Mon Jun 04 07:05:00 EDT 2007
long timestamp = myDate.getTime();
System.out.println(timestamp); //1180955100000 -- where are the milliseconds?

// on the other hand...

myDate = new Date();
System.out.println(myDate);  //Tue Sep 16 13:02:44 EDT 2008
timestamp = myDate.getTime();
System.out.println(timestamp); //1221584564703 -- why, oh, why?
Run Code Online (Sandbox Code Playgroud)

java timestamp date gettime

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

处理大量数据的建议

所以我有一个"大"的数字数据的"非常大"的ASCII文件(一共几千兆字节),我的程序需要至少按顺序处理整个数据.

有关存储/加载数据的建议吗?我曾想过将文件转换为二进制文件以使它们更小并加快加载速度.

我应该一次性将所有内容加载到内存中吗?
如果没有,是否打开了部分加载数据的好方法?
什么是与Java相关的效率提示?

java large-data-volumes loading large-files

6
推荐指数
1
解决办法
8997
查看次数

Java:外部和内部类方法之间的名称歧义

假设我有:

public class OuterClass() {

  public class InnerClass {
    public void someMethod(int x) {
      someMethod(x);
    }
  }

  public void someMethod(int x) {
    System.out.println(x);
  }
}
Run Code Online (Sandbox Code Playgroud)

如何解决someMethod()外部类和someMethod()内部类之间的歧义?

java oop ambiguity inner-classes outer-classes

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

订购git-rev-list

git-rev-list如何命令它返回的提交?

我主要是指在开发的并发分支上进入的提交,然后合并到主分支.似乎没有按照日期对提交进行排序,这是有道理的,因为提交可以在过去或将来的不同时间挑选.

例如,这里有一些历史git-log......

*   Sat, 25 Aug 2012 11:37:23 -0700 8238401
|\  
| * Thu, 23 Aug 2012 12:29:09 -0700 c9de861
* |   Fri, 24 Aug 2012 16:29:01 -0700 b7e8827
|\ \  
| * | Mon, 14 May 2012 20:46:30 +0200 0a1db74
| * | Mon, 14 May 2012 17:54:25 +0200 e03e71d
| * | Fri, 13 Jul 2012 12:01:11 +0200 bffa852
* | |   Fri, 24 Aug 2012 15:45:13 -0700 09fad50
|\ \ \  
| * | …
Run Code Online (Sandbox Code Playgroud)

git git-rev-list

6
推荐指数
1
解决办法
3358
查看次数

如何在Rails项目之间共享数据库,迁移和模型?

我知道StackOverflow上已经存在一些问题,但它们往往已经过时了,并且没有充分说明迁移在以下场景中应该如何工作,这应该是相当常见的:

  • 你有一些在Rails中实现的应用程序.
  • 您有一些适用于您的数据的管理应用程序,它是在Rails中实现的单独应用程序.
  • 两个应用程序都在相同的数据库和模型上运行

我的问题是:对我们的模型进行分析的最佳方法是什么,这两个应用程序都不需要复制模型代码?

我们关注以下内容:

  • 对于共享模型,数据库迁移应该存在于何处?
  • 如果每个应用程序都希望在共享模型之上添加其他模型,该怎么办?这些迁移在哪里生活?
  • 将现有迁移迁移到建议的共享迁移方案的最佳方法是什么?

谢谢.

ruby-on-rails models project-layout

6
推荐指数
1
解决办法
324
查看次数

使用FileChannel和ByteArrays读取ASCII文件

我有以下代码:

        String inputFile = "somefile.txt";
        FileInputStream in = new FileInputStream(inputFile);
        FileChannel ch = in.getChannel();
        ByteBuffer buf = ByteBuffer.allocateDirect(BUFSIZE);  // BUFSIZE = 256

        /* read the file into a buffer, 256 bytes at a time */
        int rd;
        while ( (rd = ch.read( buf )) != -1 ) {
            buf.rewind();
            for ( int i = 0; i < rd/2; i++ ) {
                /* print each character */
                System.out.print(buf.getChar());
            }
            buf.clear();
        }
Run Code Online (Sandbox Code Playgroud)

但是角色会显示在?的位置.这是否与使用Unicode字符的Java有关?我该如何纠正?

java io file-io filechannel bytearray

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

Git如何存储树对象?

我试图理解git如何存储树对象的确切格式.如何计算树对象的哈希值?

git

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

Elasticsearch:无法通过curl连接,奇怪的不一致行为

我正在运行Elasticsearch 1.3.4,通过Homebrew在Mac OS X 10.10上新安装:

$ brew install elasticsearch
$ elasticsearch
Run Code Online (Sandbox Code Playgroud)

http://localhost:9200/_cluster/state在浏览器中运行成功:

{
  "cluster_name": "elasticsearch_jbrukh",
  "version": 2,
  "master_node": "q6Jzcza_RwaVvc_1u95O1Q",
  "blocks": {},
  "nodes": {
    "q6Jzcza_RwaVvc_1u95O1Q": {
      "name": "Ethan Edwards",
      "transport_address": "inet[/127.0.0.1:9300]",
      "attributes": {}
    }
  },
  "metadata": {
    "templates": {},
    "indices": {}
  },
  "routing_table": {
    "indices": {}
  },
  "routing_nodes": {
    "unassigned": [],
    "nodes": {
      "q6Jzcza_RwaVvc_1u95O1Q": []
    }
  },
  "allocations": []
}
Run Code Online (Sandbox Code Playgroud)

但是,以下curl命令失败:

$ curl -XGET "http://localhost:9200/_cluster/state"
curl: (7) Failed to connect to localhost port 9200: Connection refused
Run Code Online (Sandbox Code Playgroud)

此外,curl命令间歇性地成功,但只有在从浏览器中点击该URL之后,它才会工作一次,然后再次因上述错误而再次失败.

我该如何解决这个问题?

curl elasticsearch

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