我试图插入约50,000个对象(因此50,000个键)java.util.HashMap<java.awt.Point, Segment>.但是,我一直得到一个OutOfMemory异常.(Segment是我自己的课 - 非常轻的重量 - 一个String领域,三个int领域).
Exception in thread "main" java.lang.OutOfMemoryError: Java heap space
at java.util.HashMap.resize(HashMap.java:508)
at java.util.HashMap.addEntry(HashMap.java:799)
at java.util.HashMap.put(HashMap.java:431)
at bus.tools.UpdateMap.putSegment(UpdateMap.java:168)
这看起来非常荒谬,因为我发现机器上有足够的内存 - 无论是在自由RAM还是用于虚拟内存的高清空间.
是否有可能Java运行时有一些严格的内存要求?我可以增加这些吗?
是否有一些奇怪的限制HashMap?我是否必须实施自己的?还有其他值得关注的课程吗?
(我在具有2GB RAM的Intel机器上运行OS X 10.5下的Java 5.)
如何以跨平台方式使用主题和正文打开默认邮件程序?
不幸的是,这是用Java编写的客户端应用程序,而不是网站.
我希望这能以跨平台的方式工作(这意味着Windows和Mac,对不起Linux).我很高兴在Windows中执行VBScript,或在OS X中执行AppleScript.但我不知道这些脚本应该包含什么.我很乐意执行用户的默认程序,而不仅仅是搜索Outlook或其他任何内容.
在OS X中,我尝试执行命令:
open mailto:?subject=MySubject&body=TheBody
Run Code Online (Sandbox Code Playgroud)
需要URL转义来替换空格%20.
更新在Windows上,您必须玩各种游戏才能start正常运行.这是适当的Java咒语:
class Win32 extends OS {
public void email(String subject, String body) throws Exception {
String cmd = "cmd.exe /c start \"\" \"" + formatMailto(subject, body) + "\"";
Runtime.getRuntime().exec(cmd);
}
}
Run Code Online (Sandbox Code Playgroud) 在Django,我有两个模型:
class Product(models.Model):
name = models.CharField(max_length = 50)
categories = models.ManyToManyField(Category)
class ProductRank(models.Model):
product = models.ForeignKey(Product)
rank = models.IntegerField(default = 0)
Run Code Online (Sandbox Code Playgroud)
我将排名放在一个单独的表中,因为页面的每个视图都会导致排名发生变化,我担心所有这些写入都会使我的其他(主要是读取)查询变慢.
我Products从一个简单的查询中收集了一个列表:
cat = Category.objects.get(pk = 1)
products = Product.objects.filter(categories = cat)
Run Code Online (Sandbox Code Playgroud)
我现在想要获得这些产品的所有等级.我宁愿一次性完成所有操作(使用SQL连接),并且想知道如何使用Django的查询机制来表达它.
在Django中这样做的正确方法是什么?
我似乎总是遇到这个错误:
路由表中的路由与提供的值不匹配.
在执行当前Web请求期间发生了未处理的异常.请查看堆栈跟踪以获取有关错误及其源自代码的位置的更多信息.
堆栈跟踪只是一堆MVC垃圾.
显然我正在查询不存在的路由,但是如何找到它实际尝试查询的路由?我很想知道实际的URL和HTTP方法.我该怎么发现这个?
(我已经习惯了Django,其中尝试过的URL是异常的一部分,并且更喜欢比查看我的页面源并找出它更有效的方法.)
我写了一个OutputIterator来回答另一个问题.这里是:
#include <queue>
using namespace std;
template< typename T, typename U >
class queue_inserter {
queue<T, U> &qu;
public:
queue_inserter(queue<T,U> &q) : qu(q) { }
queue_inserter<T,U> operator ++ (int) { return *this; }
queue_inserter<T,U> operator * () { return *this; }
void operator = (const T &val) { qu.push(val); }
};
template< typename T, typename U >
queue_inserter<T,U> make_queue_inserter(queue<T,U> &q) {
return queue_inserter<T,U>(q);
}
Run Code Online (Sandbox Code Playgroud)
这适用于这个小复制功能:
template<typename II, typename OI>
void mycopy(II b, II e, OI oi) {
while …Run Code Online (Sandbox Code Playgroud) 想象一下,我有以下课程:
class Cow {
public static bool TryParse(string s, out Cow cow) {
...
}
}
Run Code Online (Sandbox Code Playgroud)
可以TryParse通过反思来打电话吗?我知道基础知识:
var type = typeof(Cow);
var tryParse = type.GetMethod("TryParse");
var toParse = "...";
var result = (bool)tryParse.Invoke(null, /* what are the args? */);
Run Code Online (Sandbox Code Playgroud) 我想将以下MIME类型添加到运行的站点Apache:
<mime-mapping>
<extension>jnlp</extension>
<mime-type>application/x-java-jnlp-file</mime-type>
</mime-mapping>
Run Code Online (Sandbox Code Playgroud)
那是Tomcat格式.
我在共享主机上,所以我只能创建一个.htaccess文件.有人请指定这样一个文件的完整内容吗?
我有一个嘈杂的X,Y点的未排序列表.然而,他们确实形成了通往世界的道路.我想要一种算法来使用线段绘制这些数据的近似值.
这类似于使用线拟合算法来选择线性数据的近似值的方法.我的问题只会更难,因为这条路在世界各地弯曲和蜿蜒. alt text http://www.praeclarum.org/so/pathfinder.png
有没有人知道任何标准/强大/易于理解的算法来实现这一目标?
问答:
吵闹是什么意思?如果我有一个理想的路径实现,那么我的一组点将从该理想路径中采样,并将高斯噪声添加到X和Y元素.我不知道那个噪音的均值或标准差.我或许可以猜到std dev ......
这些点是否靠近,但不是在你想要近似的一些理想但复杂的路径上?是.
你有关于他的路径形状的任何先验信息吗?获取此类信息的任何其他方式?不幸的是.
我遇到了一个对我没有多大意义的编译器错误:
#include <memory>
using namespace std;
auto_ptr<Table> table = db->query("select * from t");
Run Code Online (Sandbox Code Playgroud)
错误:从'Table*'转换为非标量类型'std :: auto_ptr <Table>'
但是,以下行确实有效:
auto_ptr<Table> table(db->query("select * from t"));
Run Code Online (Sandbox Code Playgroud)
这个构造函数的定义是什么阻止它像我期望的那样工作?我认为初始化声明使用了构造函数.
这是我auto_ptr的构造函数(来自SGI STL):
explicit
auto_ptr(element_type* __p = 0) throw() : _M_ptr(__p) { }
Run Code Online (Sandbox Code Playgroud) 有一些文本的格式我想用HTML呈现.这是一张图片:

注意带有子弹点和段落编号的灰线.子弹应该在页面上居中,数字应该是正确的.
我一直在试着想一想如何在HTML中做到这一点并且空白.你会如何捕获这种格式?