首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >toString(int变量,n)与toString()

toString(int变量,n)与toString()
EN

Stack Overflow用户
提问于 2016-04-10 04:29:25
回答 4查看 971关注 0票数 0

我一直在到处寻找这个问题的答案,我不知道它叫什么,但是带圆括号变量的toString方法有什么意义呢?

代码语言:javascript
复制
public static String toString(Student[] list, int n)
   {

   }

由于某种原因,我找不到这个答案。我不知道您可以向toString提供输入,因为我认为您没有直接调用该方法,只要声明它所在的类,就会打印一个字符串。

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2016-04-10 04:32:41

与其他任何方法一样,toString()只是一种方法。不巧的是,不带参数的toString()方法会被很多东西自动调用,比如试图打印出一个对象时。但是,这并不妨碍您生成另一个名为toString(int variable)的方法。该方法永远不会被自动调用,但是如果您想在编写的任何程序中执行自定义字符串操作,仍然可以声明它并自己调用它。

票数 0
EN

Stack Overflow用户

发布于 2016-04-10 04:32:38

您可以为任何方法提供任何参数,但是toString是特殊的,因为它在许多内部工作中都使用。

said...this不是那个toString方法。你想要覆盖的那个不带任何参数。

代码语言:javascript
复制
@Override
public String toString() {
    // implementation
}

接受参数的toString意味着对象没有足够的信息来打印关于自己的信息,这是矛盾的,所以最好将该方法重命名为更合适的方法。

票数 1
EN

Stack Overflow用户

发布于 2016-04-10 05:19:09

可以在特定类中重写toString(),

就像这样

代码语言:javascript
复制
public class ToStringEg {

private Student[] list;

private int n;

public ToStringEg(Student[] list, int n) {
    super();
    this.list = list;
    this.n = n;
}

@Override
public String toString() {
    StringBuffer buf = new StringBuffer();
    // You can access list and v varible required by you
    //finally create a buf based on your logic
    return buf.toString();
}

}

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36525801

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档