Java程序 檢查TPP學(xué)生參加面試的資格
TPP(Technology Pioneer Program)是一個由Google組織的免費的技術(shù)學(xué)習(xí)和人才推薦計劃,旨在培養(yǎng)和推薦具有優(yōu)秀技術(shù)和思維能力的高校學(xué)生。愛掏網(wǎng) - it200.com每年的計劃需要經(jīng)過嚴(yán)格的篩選和面試,才能有機會參加。愛掏網(wǎng) - it200.com
在對學(xué)生的篩選過程中,我們需要一個Java程序來檢查學(xué)生是否符合參加面試的資格,以確保計劃的公正性和可行性。愛掏網(wǎng) - it200.com在這篇文章中,我將介紹如何編寫這個Java程序。愛掏網(wǎng) - it200.com
需求
在編寫Java程序進行校驗之前,我們需要了解TPP對學(xué)生的要求。愛掏網(wǎng) - it200.com學(xué)生參加TPP面試需要滿足以下要求:
-年齡在18-25歲之間
-本科或碩士在讀學(xué)生
-計算機或相關(guān)專業(yè)學(xué)科相關(guān)專業(yè)
-有較強的英語聽說讀寫能力
-熟練掌握至少一門編程語言
根據(jù)以上要求,我們可以開始編寫Java程序進行篩選和校驗。愛掏網(wǎng) - it200.com
程序?qū)崿F(xiàn)
我們先定義一個學(xué)生類,用于存儲學(xué)生的信息:
public class Student {
private String name; //姓名
private int age; //年齡
private String major; //專業(yè)
private boolean isUndergraduate; //是否為本科在讀學(xué)生
private boolean isGraduate; //是否為碩士在讀學(xué)生
private boolean canSpeakEnglish; //是否具有良好的英語口語表達能力
private boolean canListenEnglish; //是否具有良好的英語聽力能力
private boolean canWriteEnglish; //是否具有良好的英語寫作能力
private boolean canReadEnglish; //是否具有良好的英語閱讀能力
private List<String> programmingLanguages; //已掌握編程語言列表
//構(gòu)造方法
public Student(String name, int age, String major, boolean isUndergraduate, boolean isGraduate, boolean canSpeakEnglish, boolean canListenEnglish, boolean canWriteEnglish, boolean canReadEnglish, List<String> programmingLanguages) {
this.name = name;
this.age = age;
this.major = major;
this.isUndergraduate = isUndergraduate;
this.isGraduate = isGraduate;
this.canSpeakEnglish = canSpeakEnglish;
this.canListenEnglish = canListenEnglish;
this.canWriteEnglish = canWriteEnglish;
this.canReadEnglish = canReadEnglish;
this.programmingLanguages = programmingLanguages;
}
//getter 和 setter 方法
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 String getMajor() {
return major;
}
public void setMajor(String major) {
this.major = major;
}
public boolean isUndergraduate() {
return isUndergraduate;
}
public void setUndergraduate(boolean undergraduate) {
isUndergraduate = undergraduate;
}
public boolean isGraduate() {
return isGraduate;
}
public void setGraduate(boolean graduate) {
isGraduate = graduate;
}
public boolean isCanSpeakEnglish() {
return canSpeakEnglish;
}
public void setCanSpeakEnglish(boolean canSpeakEnglish) {
this.canSpeakEnglish = canSpeakEnglish;
}
public boolean isCanListenEnglish() {
return canListenEnglish;
}
public void setCanListenEnglish(boolean canListenEnglish) {
this.canListenEnglish = canListenEnglish;
}
public boolean isCanWriteEnglish() {
return canWriteEnglish;
}
public void setCanWriteEnglish(boolean canWriteEnglish) {
this.canWriteEnglish = canWriteEnglish;
}
public boolean isCanReadEnglish() {
return canReadEnglish;
}
public void setCanReadEnglish(boolean canReadEnglish) {
this.canReadEnglish = canReadEnglish;
}
public List<String> getProgrammingLanguages() {
return programmingLanguages;
}
public void setProgrammingLanguages(List<String> programmingLanguages) {
this.programmingLanguages = programmingLanguages;
}
}
然后我們定義一個校驗類,用于校驗學(xué)生是否符合TPP的要求:
public class Validator {
public boolean validate(Student student) {
//校驗?zāi)挲g
int age = student.getAge();
if (age < 18 || age > 25) {
return false;
}
//校驗專業(yè)
String major = student.getMajor();
if (!major.contains("計算機") && !major.contains("軟件工程")) {
return false;
}
//校驗學(xué)位
boolean isUndergraduate = student.isUndergraduate();
boolean isGraduate = student.isGraduate();
if (!isUndergraduate && !isGraduate) {
return false;
}
//校驗英語能力
boolean canSpeakEnglish = student.isCanSpeakEnglish();
boolean canListenEnglish = student.isCanListenEnglish();
boolean canWriteEnglish = student.isCanWriteEnglish();
boolean canReadEnglish = student.isCanReadEnglish();
if (!canSpeakEnglish || !canListenEnglish || !canWriteEnglish || !canReadEnglish) {
return false;
}
//校驗已掌握的編程語言
List<String> programmingLanguages = student.getProgrammingLanguages();
if (programmingLanguages == null || programmingLanguages.size() == 0) {
return false;
}
return true;
}
}
最后,我們可以編寫一個測試類,用于測試我們的校驗程序:
public class Tester {
public static void main(String[] args) {
Validator validator = new Validator();
List<String> programmingLanguages1 = new ArrayList<String>();
programmingLanguages1.add("Java");
programmingLanguages1.add("Python");
Student student1 = new Student("張三", 21, "計算機科學(xué)與技術(shù)", true, false, true, true, true, true, programmingLanguages1);
boolean result1 = validator.validate(student1);
System.out.println("學(xué)生1是否符合參加面試的資格:" + result1);
List<String> programmingLanguages2 = new ArrayList<String>();
programmingLanguages2.add("C++");
Student student2 = new Student("李四", 26, "數(shù)學(xué)", false, true, false, false, false, false, programmingLanguages2);
boolean result2 = validator.validate(student2);
System.out.println("學(xué)生2是否符合參加面試的資格:" + result2);
}
}
運行結(jié)果
運行以上程序,我們得到的結(jié)果如下:
學(xué)生1是否符合參加面試的資格:true
學(xué)生2是否符合參加面試的資格:false
結(jié)論
通過以上的Java程序?qū)崿F(xiàn),我們可以快速簡單地校驗TPP參加者是否符合參加面試的資格,提高了篩選的效率和準(zhǔn)確性,更好地保障了TPP計劃的公正性和可行性。愛掏網(wǎng) - it200.com