小编Ell*_*der的帖子

将ArrayList输出为String而不显示[,](括号)

好的,所以我有一个我需要作为String返回的ArrayList.现在我正在使用这种方法:

List<Customer> customers = new ArrayList<>();
List<Account> accounts = new ArrayList<>();


public String customerList() 
{
    String list = Arrays.toString(customers.toArray()); 
    return list;
}

public String accountList() 
{ 
    String account = Arrays.toString(accounts.toArray()); 
    return account;
}
Run Code Online (Sandbox Code Playgroud)

这很好用,但问题是我在文本周围有括号.我得到的东西像:

 Customer list:
 --------------
 [Name: Last, First
 , Name: Last, First
 , Name: Last, First
 ]
Run Code Online (Sandbox Code Playgroud)

当我想要这样的事情时:

 Customer list:
 --------------
 Name: Last, First
 Name: Last, First
 Name: Last, First
Run Code Online (Sandbox Code Playgroud)

但是,与类似的问题不同,我不只是想逐行输出.我需要将ArrayList存储在没有括号的String中,以便我可以使用它.

编辑:应该注意的是,我希望它看起来像版本中的一个逗号是由一个不同的类中的方法放在那里:

public final String getName()  
    { 
        return getLast() + ", " + getFirst(); 
    }
Run Code Online (Sandbox Code Playgroud)

编辑2:通过调整我给出的两个答案,我找到了一个完整的解决方案.决定哪个是"答案"很困难,因为我发现它们都很有用,但是我选择了更有用的那个. …

java arrays string arraylist

12
推荐指数
3
解决办法
3万
查看次数

有没有办法去方法的特定部分,而不是方法的开始?

在Java 8中,有些情况下我希望程序指向方法的特定部分而不是方法的开头,但是有没有办法做到这一点?

我知道,例如,我可以创建一个循环,其中包含我想重复的代码段的副本,我也可以将该方法分解为以下部分:

public static void main(String[] args) 
 { //do stuff
  methodA();
 }
public static void methodA()
{
  //do more stuff
 methodB();
}
public static void methodB()
{  
//do some other stuff
if (answer == 1) methodA(); //return to methodA
else System.exit(0);
}
Run Code Online (Sandbox Code Playgroud)

这是一个非常简单的例子(有明显的代码缺失,但只是参考),我是如何进行的,但我希望能够在main中插入某种标签并像方法一样引用它无需将主要方法分解为块.

问题是:有可能吗?或者我可以采取其他方法吗?

另外:如果这在Java中不可用,但是以其他语言提供,那么对这种语言的引用将有助于我查看.

编辑:澄清,我不是专门寻找一个goto()命令所以请不要在你的答案中假设这样.即使可用,我也希望避免使用goto()命令,因为如果我在其上面添加代码,那么任何指向行而不是方法的东西都会破坏.我想象的更像是这样:

public static void main(String[] args) 
 { //do stuff
  label bookmarkA();
   //do more stuff
   bookmarkA();
 }
Run Code Online (Sandbox Code Playgroud)

正如你所看到的,这是在宣告我将在以后跳转到哪里然后调用它就像我将调用方法一样.基于下面的答案,我怀疑这样的事情是否具体存在(虽然如果它确实我会喜欢它),但似乎有一些命令在一定范围内在某个范围内向上或向下移动.

一个好的答案可能会告诉我什么是可能的,至少指出我正确使用它的方向.一个好的答案也可能告诉我,如果有更接近我想要的东西也可用另一种语言.

最后,这不是要求goto()命令的问题的重复,因为这不是我想要的.

编辑2:如果关于这个问题的任何事情都不清楚,我不会询问任何具体的方法来做我想做的事情,我也没有指明我想开始执行一个方法,而不是在方法的开头.我要问,具体是什么是可能的.请假设只有一种方法在使用,或者我想要发生的一切都采用相同的方法.

正如我非常清楚地解释的那样,我已经知道如何使用多种方法解决问题,但如果可能的话,我想在同一方法中解决问题.

java methods label goto function

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

标签 统计

java ×2

arraylist ×1

arrays ×1

function ×1

goto ×1

label ×1

methods ×1

string ×1