Java oop题3(重要5题):ArrayList集合对象,对象放入集合,只能存放,添加,修改

知识延伸:ArrayList
该类也是实现了List的接口,实现了可变大小的数组,随机访问和遍历元素时,提供更好的性能。该类也是非同步的,在多线程的情况下不要使用。ArrayList 增长当前长度的50%,插入删除效率低。




//1、创建一个ArrayList集合对象,在该集合中添加8种基本数据类型对应的包装类型,。通过循环遍历打印出所有对象。
package a;
import java.util.ArrayList;
import java.util.Iterator;
public class jihe {
public static void main(String[] argss) {
ArrayList s = new ArrayList();
Byte A1 = 5;
Integer A2 = 20;
Float A4 = (float) 1314;
Long A3 = (long) 9.9;
Character A5 = 'a';
String A6 = "anan";
Boolean A7 = true;
Double A8 = 520.0;
s.add(A8);
s.add(A7);
s.add(A6);
s.add(A5);
s.add(A4);
s.add(A3);
s.add(A1);
for (int i=0; i<s.size(); i++) {
System.out.println(s.get(i));
}
}
}

// 2、创建一个ArrayList集合对象,创建五个不同的对象Apple, Banana,将这些对象放入集合中,并通
// 过循环遍历打印出来。
package a;
import java.util.ArrayList;
import java.util.Iterator;
public class jihe {
public static void main(String[] args) {
ArrayList s = new ArrayList();
shangping A1 = new shangping("Apple");
shangping A2 = new shangping("Banana");
shangping A3 = new shangping("AK47");
shangping A4 = new shangping("AWM");
shangping A5 = new shangping("98k");
s.add(A1);
s.add(A2);
s.add(A3);
s.add(A4);
s.add(A5);
for (int i = 0; i < s.size(); i++) {
System.out.println(s.get(i).toString());
}
}
}class shangping{
String name ;
public shangping(String name){
// TODO Auto-generated constructor stub
this.name=name;
}
@Override
public String toString() {
return "商品名:" + name;
}
}

//3、创建一个只能存放Apple的ArrayList,通过循环添加6个Apple对象。然后通过循环遍历打印出来
package a;
import java.util.ArrayList;
import java.util.Iterator;
public class jihe {
public static void main(String[] args) {
ArrayList<Apple> s = new ArrayList();
for (int i = 0; i < 6; i++) {
s.add(new Apple(i));
}
for (int i =0; i <s.size(); i++) {
System.out.println(s.get(i).ID);
}
}
}
class Apple {
int ID;
public Apple(int ID) {
// TODO Auto-generated corr'structor stub
this.ID = ID;
}
public int getID() {
return ID;
}
}

// 1.创建一个学生类,包含学生编号,姓名,性别,成绩,将学生放入类集合中,添加5名学生,算出学生的平均成绩
package a;
import java. util. ArrayList;
import java. util. Iterator ;
public class jihe{
public static void main(String[] arrgs) {
ArrayList s=new ArrayList();
Studic A1=new Studic("5_20", "诗名",'男',95);
Studic A2=new Studic("1_31", "书名",'男',92);
Studic A3=new Studic("4_52", "画名",'男',90);
Studic A4=new Studic("2_22", "唱名",'男',111);
Studic A5=new Studic("6_66", "帅名",'男',134);
s. add(A1) ;
s. add(A2) ;
s. add(A3) ;
s. add(A4) ;
s. add(A5) ;
double sum=0;
for(int i=0;i<s.size();i++) {
Studic k=(Studic)s.get(i) ;
sum+=k.zj;}
System. out. println("学生的平均成绩:"+sum/s.size());
}}
class Studic{
String ID;
String name;
char sex ;
double zj;
public Studic (String ID, String name, char sex, double zj) {
this. ID=ID;
this. name=name ;
this. sex=sex;
this. zj=zj;
}
}

// 2.在第一题的基础上,让用户输入学生编号,修改学生的成绩
package a;
import java. util. ArrayList;
import java. util.Iterator ;
import java. util. Scanner;
public class jihe{
public static void main(String[] args) {
ArrayList s=new ArrayList() ;
Studic A1=new Studic("5_20", "诗名",'男',95);
Studic A2=new Studic("1_31", "书名",'男',92);
Studic A3=new Studic("4_52", "画名",'男',90);
Studic A4=new Studic("2_22", "唱名",'男',111);
Studic A5=new Studic("6_66", "帅名",'男',134);
s. add(A1) ;
s. add(A2) ;
s. add(A3) ;
s. add (A4);
s. add(A5) ;
for(int i=0;i<s. size() ;i++) {
System. out. println(s.get(i).toString());}
Scanner sc=new Scanner (System. in);
System. out.println("请输入学生编号");
String bh=sc.next();
System.out.println("请输入修改的成绩");
double xg=sc.nextDouble() ;
for(int i=0;i<s.size();i++){
Studic k= (Studic)s.get(i) ;
if(k. ID. equals (bh)) {
k. zj=xg;
}
}
double sum=0;
for(int i=0;i<s.size();i++) {
Studic k=(Studic)s.get(i) ;
sum+=k.zj;}
System. out. println("学生的平均成绩:"+sum/s.size());
}}
class Studic{
String ID;
String name;
char sex;
double zj;
public Studic(String ID, String name, char sex, double zj) {
// TODO Auto-generated constructor stub
this. ID=ID;
this. name=name ;
this. sex=sex;
this. zj=zj;
}
@Override
public String toString() {return"编号:"+ ID + "\t名字:"+ name +"\t性别:"+ sex + "\t成绩:"+ zj;
}
}
