返回多个字符串格式

问题描述:

我是这个论坛的新手。我卡在我的代码的一部分。我的代码 一种方法给我这样的信息:返回多个字符串格式

getFullAddress()应返回的地址作为格式的字符串,每行一个项目: 如:

23 High Street 
Newcastle 
NE1 1NE 

的事情是,我坚持,我试过一切,但没有任何工作。

这里是我的代码:

/** 
* Write a description of class Address here. 
* 
* @author Bento Xavier 
* @version 10/17/2015 
*/ 
public class Address 
{ 
    private String postcode; 
    private String street; 
    private String town; 

public Address(String street, String town, String postcode) 
{ 
    this.street = street; 
    this.town = town; 
    this.postcode = postcode; 
} 

public String getFullAddress() 
{ 
    String fullAddress = ""; 
    fullAddress = ; 
} 

public String getPostcode() 
{ 
    return postcode; 
} 

public String getStreet() 
{ 
    return street; 
} 

public String getTown() 
{ 
    return town; 
} 

public void printAddress() 
{ 
    System.out.println(street + " \n" + town + " \n" + postcode); 
} 

public void setFullAddress(String street, String town, String postcode) 
{ 
    this.street = street; 
    this.town = town; 
    this.postcode = postcode; 
} 

public void setPostcode(String postcode) 
{ 
    this.postcode = postcode; 
} 

public void setStreet(String street) 
{ 
    this.street = street; 
} 

public void setTown(String town) 
{ 
    this.town = town; 
} 
} 

预先感谢您的帮助

您还没有getFullAddress()返回任何东西。更改getFullAddress方法是:

public String getFullAddress() { 
    final String separator = System.getProperty("line.separator"); //final indicates the variable will not change 
    return getStreet() + separator + getTown() + separator + getPostcode(); 
} 

我建议你使用System.getProperty("line.separator");超过\n,因为\n将无法​​正常每一个操作系统上运行。使用System.getProperty()获取行分隔符将为每个操作系统返回正确的换行符。

+0

格式肯定似乎会更加清晰,或者至少* *行分隔符设置为一个中间值。 –

+0

我不想太复杂的代码,因为这是一个初学者的问题。但是你保存行分隔符是正确的,不需要三次。编辑。 – nbokmans

只是CONCAT它们之间换行符的字符串:

public String getFullAddress() { 
    return String.format("%s%n%s%n", getStreet(), getTown(), getPostcode()); 
}