[BAEL-6623] Add code for Convert Object to String (#15000)
* Add Person class * Add Unit tests for Person class * Add Person class * Add PersonWithHashCode class * Address review comments * Add PersonUnitTest class * Add PersonWithHashCodeUnitTest class * Add missing dependency * Remove redundant code * Remove redundant code * Address review comments * Address review comments
This commit is contained in:
parent
b0ed62e8c8
commit
781a1c265a
|
@ -23,4 +23,12 @@
|
|||
</resources>
|
||||
</build>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
<version>${commons-lang3.version}</version>
|
||||
</dependency>
|
||||
</dependencies>
|
||||
|
||||
</project>
|
|
@ -0,0 +1,34 @@
|
|||
package com.baeldung.objecttostring;
|
||||
|
||||
import org.apache.commons.lang3.builder.ToStringBuilder;
|
||||
import org.apache.commons.lang3.builder.ToStringStyle;
|
||||
|
||||
public class Person {
|
||||
private String name;
|
||||
private int age;
|
||||
|
||||
public Person(String name, int age) {
|
||||
this.name = name;
|
||||
this.age = age;
|
||||
}
|
||||
|
||||
public String getName() {
|
||||
return name;
|
||||
}
|
||||
|
||||
public int getAge() {
|
||||
return age;
|
||||
}
|
||||
|
||||
@Override
|
||||
public String toString() {
|
||||
return "Person{name='" + name + "', age=" + age + '}';
|
||||
}
|
||||
|
||||
public String toCustomString() {
|
||||
return new ToStringBuilder(this, ToStringStyle.JSON_STYLE)
|
||||
.append("name", name)
|
||||
.append("age", age)
|
||||
.toString();
|
||||
}
|
||||
}
|
|
@ -0,0 +1,38 @@
|
|||
package com.baeldung.objecttostring;
|
||||
|
||||
import org.junit.Test;
|
||||
import static org.junit.Assert.assertEquals;
|
||||
|
||||
public class PersonUnitTest {
|
||||
@Test
|
||||
public void givenObject_whenToString_thenConvert() {
|
||||
Person person = new Person("Sarah", 28);
|
||||
String expected = "Person{name='Sarah', age=28}";
|
||||
String actual = person.toString();
|
||||
assertEquals(expected, actual);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenObject_whenValueOf_thenConvert() {
|
||||
Person person = new Person("Sarah", 28);
|
||||
String expected = "Person{name='Sarah', age=28}";
|
||||
String actual = String.valueOf(person);
|
||||
assertEquals(expected, actual);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenObject_whenConcat_thenConvert() {
|
||||
Person person = new Person("Sarah", 28);
|
||||
String expected = "Person{name='Sarah', age=28}";
|
||||
String actual = "" + person;
|
||||
assertEquals(expected, actual);
|
||||
}
|
||||
|
||||
@Test
|
||||
public void givenObject_whenToStringBuilder_thenConvert() {
|
||||
Person person = new Person("Sarah", 28);
|
||||
String expected = "{\"name\":\"Sarah\",\"age\":28}";
|
||||
String actual = person.toCustomString();
|
||||
assertEquals(expected, actual);
|
||||
}
|
||||
}
|
Loading…
Reference in New Issue