/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Problem3_1 {
// complete this class, called Problem3_1, with the following items:
// 1. Declare four attributes, name, age, height, and weight of types String
// and int-s.
// Write a constructor for this class that initializes ONLY the name, age,
// and height to three incoming arguments,
// and sets the weight to always be -1 (the latter is not an incoming
// argument).
int age;
@Override
return "Problem3_1 [name=" + name + ", age=" + age + ", height=" + height + ", weight=" + weight + ", address="
+ address + "]";
}
int height;
int weight;
Address address;
public Problem3_1
(String name1,
int age1,
int height1
) { name = name1;
age = age1;
height = height1;
weight = -1;
}
void setAddress(Address s) {
//address = s;
this.address = s;
}
// 2. Imagine there is a class called Address that you have access to (it's
// below).
// Its constructor takes an integer street number and a String street. Add
// an attribute called address to
// the Problem3_1 class, and create a **method called setAddress that sets
// the attribute to the incoming argument.**
public static class Address {
int number;
public Address
(int n,
String s
) { number = n;
street = s;
}
@Override
return "Address [number=" + number + ", street=" + street + "]";
}
}
public static void main
(String[] args
) { // TODO Auto-generated method stub
/*Problem3_1 ppp = new Problem3_1("name1",20,5);
Problem3_1.Address a_address= new Problem3_1.Address(20,"1st street");
a.setAddress(a_address);
System.out.println(a.address);*/
int failed = 0;
Problem3_1 p = new Problem3_1("Jane", 22, 65);
if (p.name.compareTo("Jane") == 0 && p.age == 22 && p.height == 65 && p.weight == -1)
System.
out.
println("Test 1 passed!"); else{
failed ++;
System.
out.
println("Please check your code for question 1! "); }
Address a = new Address(12, "Fairfax Dr");
p.setAddress(a);
if (p.address == a)
System.
out.
println("Test 2 passed!"); else{
failed ++;
System.
out.
println("Please check your code for question 2! "); }
if (failed > 0)
else{
System.
out.
println("GREAT WORK! EVERYTHING PASSED!"); }
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgUHJvYmxlbTNfMSB7CgoJLy8gY29tcGxldGUgdGhpcyBjbGFzcywgY2FsbGVkIFByb2JsZW0zXzEsIHdpdGggdGhlIGZvbGxvd2luZyBpdGVtczoKCgkvLyAxLiBEZWNsYXJlIGZvdXIgYXR0cmlidXRlcywgbmFtZSwgYWdlLCBoZWlnaHQsIGFuZCB3ZWlnaHQgb2YgdHlwZXMgU3RyaW5nCgkvLyBhbmQgaW50LXMuCgkvLyBXcml0ZSBhIGNvbnN0cnVjdG9yIGZvciB0aGlzIGNsYXNzIHRoYXQgaW5pdGlhbGl6ZXMgT05MWSB0aGUgbmFtZSwgYWdlLAoJLy8gYW5kIGhlaWdodCB0byB0aHJlZSBpbmNvbWluZyBhcmd1bWVudHMsCgkvLyBhbmQgc2V0cyB0aGUgd2VpZ2h0IHRvIGFsd2F5cyBiZSAtMSAodGhlIGxhdHRlciBpcyBub3QgYW4gaW5jb21pbmcKCS8vIGFyZ3VtZW50KS4KCVN0cmluZyBuYW1lOwoJaW50IGFnZTsKCUBPdmVycmlkZQoJcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKCQlyZXR1cm4gIlByb2JsZW0zXzEgW25hbWU9IiArIG5hbWUgKyAiLCBhZ2U9IiArIGFnZSArICIsIGhlaWdodD0iICsgaGVpZ2h0ICsgIiwgd2VpZ2h0PSIgKyB3ZWlnaHQgKyAiLCBhZGRyZXNzPSIKCQkJCSsgYWRkcmVzcyArICJdIjsKCX0KCglpbnQgaGVpZ2h0OwoJaW50IHdlaWdodDsKCglBZGRyZXNzIGFkZHJlc3M7CgoJcHVibGljIFByb2JsZW0zXzEoU3RyaW5nIG5hbWUxLCBpbnQgYWdlMSwgaW50IGhlaWdodDEpIHsKCSAgbmFtZSA9IG5hbWUxOwoJICBhZ2UgPSBhZ2UxOwoJICBoZWlnaHQgPSBoZWlnaHQxOwoJICB3ZWlnaHQgPSAtMTsKCX0KCgl2b2lkIHNldEFkZHJlc3MoQWRkcmVzcyBzKSB7CgkJLy9hZGRyZXNzID0gczsKCQkKCQl0aGlzLmFkZHJlc3MgPSBzOwoJfQoKCS8vIDIuIEltYWdpbmUgdGhlcmUgaXMgYSBjbGFzcyBjYWxsZWQgQWRkcmVzcyB0aGF0IHlvdSBoYXZlIGFjY2VzcyB0byAoaXQncwoJLy8gYmVsb3cpLgoJLy8gSXRzIGNvbnN0cnVjdG9yIHRha2VzIGFuIGludGVnZXIgc3RyZWV0IG51bWJlciBhbmQgYSBTdHJpbmcgc3RyZWV0LiBBZGQKCS8vIGFuIGF0dHJpYnV0ZSBjYWxsZWQgYWRkcmVzcyB0bwoJLy8gdGhlIFByb2JsZW0zXzEgY2xhc3MsIGFuZCBjcmVhdGUgYSAqKm1ldGhvZCBjYWxsZWQgc2V0QWRkcmVzcyB0aGF0IHNldHMKCS8vIHRoZSBhdHRyaWJ1dGUgdG8gdGhlIGluY29taW5nIGFyZ3VtZW50LioqCgoJcHVibGljIHN0YXRpYyBjbGFzcyBBZGRyZXNzIHsKCgkJaW50IG51bWJlcjsKCQlTdHJpbmcgc3RyZWV0OwoKCQlwdWJsaWMgQWRkcmVzcyhpbnQgbiwgU3RyaW5nIHMpIHsKCQkJbnVtYmVyID0gbjsKCQkJc3RyZWV0ID0gczsKCQl9CgoJCUBPdmVycmlkZQoJCXB1YmxpYyBTdHJpbmcgdG9TdHJpbmcoKSB7CgkJCXJldHVybiAiQWRkcmVzcyBbbnVtYmVyPSIgKyBudW1iZXIgKyAiLCBzdHJlZXQ9IiArIHN0cmVldCArICJdIjsKCQl9CgoJfQoJCglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB7CgkJLy8gVE9ETyBBdXRvLWdlbmVyYXRlZCBtZXRob2Qgc3R1YgoJCQoJCS8qUHJvYmxlbTNfMSBwcHAgPSBuZXcgUHJvYmxlbTNfMSgibmFtZTEiLDIwLDUpOwoJCVByb2JsZW0zXzEuQWRkcmVzcyBhX2FkZHJlc3M9IG5ldyBQcm9ibGVtM18xLkFkZHJlc3MoMjAsIjFzdCBzdHJlZXQiKTsKCQlhLnNldEFkZHJlc3MoYV9hZGRyZXNzKTsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oYS5hZGRyZXNzKTsqLwoJCQoJCWludCBmYWlsZWQgPSAwOyAKCgkgICAgUHJvYmxlbTNfMSBwID0gbmV3IFByb2JsZW0zXzEoIkphbmUiLCAyMiwgNjUpOyAKCgkgICAgaWYgKHAubmFtZS5jb21wYXJlVG8oIkphbmUiKSA9PSAwICYmIHAuYWdlID09IDIyICYmIHAuaGVpZ2h0ID09IDY1ICYmIHAud2VpZ2h0ID09IC0xKSAKCSAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJUZXN0IDEgcGFzc2VkISIpOyAKCSAgICBlbHNleyAKCSAgICAgICAgZmFpbGVkICsrOyAKCSAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJQbGVhc2UgY2hlY2sgeW91ciBjb2RlIGZvciBxdWVzdGlvbiAxISAiKTsgCgkgICAgfSAKCgkgICAgQWRkcmVzcyBhID0gbmV3IEFkZHJlc3MoMTIsICJGYWlyZmF4IERyIik7IAoJICAgIHAuc2V0QWRkcmVzcyhhKTsgCgoJICAgIGlmIChwLmFkZHJlc3MgPT0gYSkgCgkgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiVGVzdCAyIHBhc3NlZCEiKTsgCgkgICAgZWxzZXsgCgkgICAgICAgIGZhaWxlZCArKzsgCgkgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiUGxlYXNlIGNoZWNrIHlvdXIgY29kZSBmb3IgcXVlc3Rpb24gMiEgIik7IAoJICAgIH0gICAgICAgICAKCgoJICAgIGlmIChmYWlsZWQgPiAwKSAKCSAgICAgICAgU3lzdGVtLm91dC5wcmludGxuKCJGYWlsZWQiKTsgCgkgICAgZWxzZXsgCgkgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbigiR1JFQVQgV09SSyEgRVZFUllUSElORyBQQVNTRUQhIik7IAoJICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4oIk5pY2UiKTsgCgkgICAgfSAKCX0KCn0=