增强for循环 改成 普通for循环

python关键路径 2018-01-15 06:41:05
/*题目要求:
* 定义类Student,包含三个属性:学号number(int),年级state(int),成绩score(int)。
* 创建20个学生对象,学号为1到20,年级和成绩都由随机数确定,打印出3年级(state值为3)的学生信息。
*
*/
import java.util.ArrayList;
import java.util.List;

public class StudentManager {
public static void main(String[] args){
List<Student> list = new ArrayList<Student>(); // 容器List, 泛型

for(int i=0; i<20; i++){
Student student = new Student();
student.setNumber(i+1);
int state = (int)(Math.random()*3+1);
//System.out.println("年级="+state);
student.setState(state);
student.setScore((int)(Math.random()*100));
list.add(student);
}

//将List中的数据 挨个拿出来赋值给每个student对象, 下面这段增强for循环改成普通for循环后,语句块内如何改动?

for (Student student : list) {
if(student.getState() <= 3 && student.getState() !=0){
if(student.getScore() >= 60) {
System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore()+" ");
System.out.println("---合格!");
}else if(student.getScore() < 60) {
System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore());
System.out.println("---不合格!");
}
}else{
System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore()+" ");
System.out.println("---不好意思,不存在3年级以上的学生!");
}
}
}
}

class Student {
private int number;
private int state;
private int score;

public Student() { //默认构造方法

}

public Student(int number, int state, int score) { //构造方法重载
this.number = number;
this.state = state;
this.score = score;
}

public int getNumber() {
return number;
}

public void setNumber(int number) {
this.number = number;
}

public int getState() {
return state;
}

public void setState(int state) {
this.state = state;
}

public int getScore() {
return score;
}

public void setScore(int score) {
this.score = score;
}
}
...全文
894 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
python关键路径 2018-01-15
  • 打赏
  • 举报
回复
Student student = list.get(i); // E get(int index) Returns the element at the specified position in this list. 非常感谢!!!
Abin0406 2018-01-15
  • 打赏
  • 举报
回复
if (null != list && list.size() > 0) { for (int i = 0; i < list.size(); i++) { Student student = list.get(i); if (student.getState() <= 3 && student.getState() != 0) { if (student.getScore() >= 60) { System.out.print("年级:" + student.getState() + " 学号:" + student.getNumber() + " 分数" + student.getScore() + " "); System.out.println("---合格!"); } else if (student.getScore() < 60) { System.out.print("年级:" + student.getState() + " 学号:" + student.getNumber() + " 分数" + student.getScore()); System.out.println("---不合格!"); } } else { System.out.print("年级:" + student.getState() + " 学号:" + student.getNumber() + " 分数" + student.getScore() + " "); System.out.println("---不好意思,不存在3年级以上的学生!"); } } }
python关键路径 2018-01-15
  • 打赏
  • 举报
回复
这里如何改成普通的for循环语句? for (Student student : list) { if(student.getState() <= 3 && student.getState() !=0){ if(student.getScore() >= 60) { System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore()+" "); System.out.println("---合格!"); }else if(student.getScore() < 60) { System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore()); System.out.println("---不合格!"); } }else{ System.out.print("年级:"+student.getState()+" 学号:"+student.getNumber()+" 分数"+student.getScore()+" "); System.out.println("---不好意思,不存在3年级以上的学生!"); }

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧