下面是我的代码:
public class StackStudy{
public static void main(String[] args){
Stack<String> st = new Stack<String>();
st.push("hi");
st.push("bye");
st.push("awful");
System.out.println(st.toString());
}
}
和控制台输出以下内容:
[hi, bye, awful]
我以为使用toString可以去掉[],为什么它还在那里?
编辑:如果toString不是摆脱[]的正确方法,那么正确的方法是什么?
因为Vector
(也可能是AbstractCollection
)的ToString()
方法包含括号(而Stack
继承了该ToString()
)。您可以通过将子字符串移除它们,如下所示
String str = st.toString();
System.out.println(str.substring(1, str.length() - 1));
问题内容: 我将最大堆设置为8 GB。当我的程序开始使用约6.4 GB(如VisualVM中所述)时,垃圾回收器开始占用大部分CPU,并且在分配约100 MB时,该程序因OutOfMemory崩溃。我在Windows上使用Oracle Java 1.7.0_21。 我的问题是是否有GC选项可以帮助解决此问题。除-Xmx8g外,我什么也没有传递。 我的猜测是堆越来越碎片化,但是GC是否不应该压缩它?
这是获取请求: 这是后端代码: 错误: CORS策略阻止了从源“http://localhost:3000”在“http://localhost:3001/”获取的访问:请求的资源上不存在“访问-控制-允许-起源”标头。如果不透明响应满足您的需求,请将请求的模式设置为“no-cors”以在禁用CORS的情况下获取资源。
为什么我总是得到这个错误? 表格: 要创建的链接
为什么Java 8不允许在接口中添加toString()的默认实现? 这是错误消息:
全部: 我对Gulp和Browserify相当陌生,我所做的是转换一些jsx代码并将它们Browserify到一个bundle.js文件中。 在app.js中,我指定了一些必需依赖项(每个依赖项可能需要一些其他文件),我以为browserify会解析它们并编译成一个bundle.js文件,但当我运行它时,即使我只在index.html页面中包含bundle.js,当我在Chrome source选