-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSensei.java
More file actions
144 lines (138 loc) · 2.99 KB
/
Sensei.java
File metadata and controls
144 lines (138 loc) · 2.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
//The constructor order for this is:
//name, lastName,personality, gender, belt, handsome, height
public class Sensei{
//Variables are defined here
private String name,lastName,personality,gender,belt;
private boolean handsome;
//Height is in cm, salary is in pesos/hr
private float height,salary;
//Default constructor
public Sensei(){
this.name = "N/A";
this.lastName = "N/A";
this.personality = "N/A";
this.gender = "N/A";
this.belt = "N/A";
this.handsome = false;
this.height = 0;
this.salary = 0;
}
//Actually Good Constructor
public Sensei(String name, String lastName, String personality, String gender, String belt, boolean handsome, float height){
this.name = name;
this.lastName = lastName;
this.personality = personality;
this.gender = gender;
this.belt = belt;
this.handsome = handsome;
this.height = height;
switch(this.belt){
case "white belt": this.salary = 100;
break;
case "red belt": this.salary = 150;
break;
case "black belt": this.salary = 200;
break;
case "product dev": this.salary = 250;
break;
default: this.salary = 0;
break;
}
}
//Get anything
public String getName(){
return name;
}
public String getLastName(){
return lastName;
}
public String getPersonality(){
return personality;
}
public String getGender(){
return gender;
}
public String getBelt(){
return belt;
}
public boolean getHandsome(){
return handsome;
}
public float getHeight(){
return height;
}
public float getSalary(){
updateSalary();
return salary;
}
//Set anything
public void setName(String arg){
this.name = arg;
}
public void setLastName(String arg){
this.lastName = arg;
}
public void setPersonality(String arg){
this.personality = arg;
}
public void setGender(String arg){
this.gender = arg;
}
public void setBelt(String arg){
this.belt = arg;
updateSalary();
}
public void setHandsome(boolean arg){
this.handsome = arg;
}
public void setHeight(float arg){
this.height = arg;
}
//Actually useful methods
public String getFullName(){
return String.format("%s %s",name,lastName);
}
public float getSalaryTenPercent(){
return this.salary/10;
}
public float getNetSalary(){
return this.salary - getSalaryTenPercent();
}
public void updateSalary(){
switch(this.belt){
case "white belt": this.salary = 100;
break;
case "red belt": this.salary = 150;
break;
case "black belt": this.salary = 200;
break;
case "product development": this.salary = 250;
break;
default: this.salary = 0;
break;
}
}
public String handsomeOrNot(){
if(this.handsome){
return "very";
}
else{
return"not";
}
}
public String fullIntro(){
return String.format(
"This sensei is %s, a pretty %s %s.\n"
+"Their course is %s.\n"
+"They are %s handsome.\n"
+"Their height is %f.\n"
+"They earn %f pesos per hour.",
this.getFullName(),
this.personality,
this.gender,
this.belt,
this.handsomeOrNot(),
this.height,
this.getNetSalary());
}
}