当前位置: 首页 > 知识库问答 >
问题:

为什么使用toString方法后仍然得到[]?[副本]

邹阳
2023-03-14

下面是我的代码:

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不是摆脱[]的正确方法,那么正确的方法是什么?

共有1个答案

王鹏飞
2023-03-14

因为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选

  • 我的文件夹结构如下: 公共html目录中的laravel项目如下所示: 问题是,当我像www.example.com一样输入url时,它会重定向到www.example.com/public.我找到了一个重写规则,允许我放入www.example.com,它只会显示不带"/Public"部分: 它对索引页面有效,但当我尝试转到任何路由时,“/public”会显示在URL中。 为什么此重写规则适用于