62,635
社区成员




package crc;
public class Coder {
private String name;
private int age;
private int salary;
/**
* 无参数构造
*/
public Coder() {
}
/**
* 满参数构造器
*/
public Coder(String name, int age, int salary) {
this.name = name;
this.age = age;
this.salary = salary;
}
public void programme() {
System.out.println(String.format("年龄为%s岁%s,原工资为%s", this.age, this.name, this.salary));
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
}
package crc;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class Test {
public static void main(String[] args) {
List<Coder> list = new ArrayList<>();
BufferedReader reader = null;
try {
reader = new BufferedReader(new InputStreamReader(System.in));
for (int i = 0; i < 4; i++) {
System.out.println(String.format("请输入第%s个Coder!", i + 1));
Coder coder = builderCoder(reader.readLine());
if (null == coder) return;
list.add(coder);
}
Test test = new Test();
test.showInfo(list);
} catch (Exception e) {
e.printStackTrace();
} finally {
if (null != reader) {
try {
reader.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
}
private static Coder builderCoder(String info) {
if (null == info || "".equals(info)) return null;
String[] params = info.split(",");
return new Coder(params[0], Integer.parseInt(params[1]), Integer.parseInt(params[2]));
}
public void showInfo(List<Coder> list) {
list.forEach(coder -> {
if (coder.getAge() <= 35) {
coder.programme();
coder.setSalary(coder.getSalary() + 2000);
System.out.println(String.format("涨薪后的薪水为%s", coder.getSalary()));
}
});
}
}
//结果
请输入第1个Coder!
张三,22,9000
请输入第2个Coder!
李四,23,12000
请输入第3个Coder!
王五,29,18000
请输入第4个Coder!
赵六,31,20000
年龄为22岁张三,原工资为9000
涨薪后的薪水为11000
年龄为23岁李四,原工资为12000
涨薪后的薪水为14000
年龄为29岁王五,原工资为18000
涨薪后的薪水为20000
年龄为31岁赵六,原工资为20000
涨薪后的薪水为22000
public class Coder {
private String name;
private int age;
private int salary;
public Coder() {
}
public Coder(String name,int age,int salary) {
this.name= name;
this.age= age;
this.salary= salary;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public int getSalary() {
return salary;
}
public void setSalary(int salary) {
this.salary = salary;
}
public void programme() {
System.out.println("年龄为"+age+"岁"+name+", 原工资为"+salary);
}
}
Test Class:
import java.util.ArrayList;
public class Test {
public void showInfo(ArrayList<Coder> list) {
for(Coder e: list) {
if(e.getAge() <= 35) {
e.programme();
e.setSalary(e.getSalary() +2000);
System.out.println("涨薪后工资为"+e.getSalary());
}
}
}
public static void main(String[] args) {
//测试参数:
args = new String[] {"张三,26,8000","李四,27,8000","王五,30,9000","小六,36,10000"};
if(args ==null || args.length <4) {
System.out.println("PS:(键盘录入4个学生信息的时候是用逗号隔开),格式: name1,age1,salary1 name2,age2,salary2....");
return;
}
ArrayList<Coder> list = new ArrayList<Coder>();
for(String str: args) {
String[] parm = str.split(",");
Coder coder = new Coder(parm[0], Integer.valueOf(parm[1]), Integer.valueOf(parm[2]));
list.add(coder);
}
Test test = new Test();
test.showInfo(list);
}
}
//结果:
年龄为26岁张三, 原工资为8000
涨薪后工资为10000
年龄为27岁李四, 原工资为8000
涨薪后工资为10000
年龄为30岁王五, 原工资为9000
涨薪后工资为11000