使用for循环内部的toString类返回多个数组 [英] Return Multiple Arrays Using for Loop Inside toString Class

查看:228
本文介绍了使用for循环内部的toString类返回多个数组的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

这就是我到目前为止所做的。这个程序基本上是做用户输入(他们的社会安全号码),验证他们的输入是在正确的格式(XXX-XX-XXXX),将验证的输入添加到数组列表。现在最后一步是创建一个toString()方法,该方法将返回一个人类可读的字符串表示形式,添加到数组中的所有社会安全号码。此方法必须使用for循环,并且每行必须打印1个社会安全号码条目。例如:

您输入的社会安全号码是:

345-43-5674

456-62- 8435

910-70-0053

  package SSNServerStorage; 

public class SSNArray
{
private String [] SSNNumber;
private int arrayCount;

public SSNArray(){
SSNNumber = new String [300];
arrayCount = 0;

$ b $ public SSNArray(int arraySize){
SSNNumber = new String [arraySize];
arrayCount = 0;


public String [] getSSNNumber(){
return SSNNumber;
}

public int getArrayCount(){
return arrayCount;

$ b $ public boolean validateSSNNumber(String SSNFormat){
return SSNFormat.matches(\\ {3} -\\ {2} \\\d {4});

$ b $ public String addSSN(String SSNFormat){$ b $ if(validateSSNNumber(SSNFormat)){
return SSNNumber [arrayCount ++] = SSNFormat;
} else {
return null;


$ b $ public String toString(){
System.out.println(您输入的社会安全号码是:); ()
{
//
//
//
//
}
}




解决方案

您可以声明一个字符串来连接所有的SS号。

  @Override 
public String toString(){
String str =您输入的社会安全号码是:\ n;
for(int x = 0; x str + = SSNumber [x] +\\\
;
return str;



$ b $ p $因为它是一个 toString()方法,你将要返回类的字符串表示,而不是做 println()


This is what I have so far. What this program basically does is take user input(their social security numbers), verifies that their input is in the proper format (XXX-XX-XXXX), adds the verified input to the arrays list. Now the final step is to create a toString() method that will return a human readable String representation of all social security numbers added to the array. This method must use a for loop, and must print 1 social security number entry per line. For example:

"The Social Security Numbers you entered are:
345-43-5674
456-62-8435
910-70-0053"

package SSNServerStorage;

public class SSNArray
{
    private String[] SSNNumber;
    private int arrayCount;

    public SSNArray(){
        SSNNumber = new String[300];
        arrayCount = 0;
    }

    public SSNArray(int arraySize){
        SSNNumber = new String[arraySize];
        arrayCount = 0;
    }

    public String[] getSSNNumber(){
        return SSNNumber;
    }

    public int getArrayCount(){
        return arrayCount;
    }

    public boolean validateSSNNumber(String SSNFormat){
        return SSNFormat.matches("\\d{3}-\\d{2}-\\d{4}");
    }

    public String addSSN(String SSNFormat){
        if (validateSSNNumber(SSNFormat)){
            return SSNNumber[arrayCount++] = SSNFormat;
        }else{
            return null;
        }
    }

    public String toString(){
        System.out.println("The Social Security Numbers you entered are:");

        for()
        {
            //
            //
            //
            //
        }
    }
}

解决方案

You can declare a String to concatenate all the SSNumbers.

@Override
public String toString(){
    String str = "The Social Security Numbers you entered are:\n";
    for(int x=0; x< arrayCount; x++)
        str += SSNumber[x] + "\n";
    return str;
}

Since it is a toString() method, you will want to return the string representation of the class instead of doing println().

这篇关于使用for循环内部的toString类返回多个数组的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆