Java基础-day07-知识点相关题
一、定义类:包含main()方法,按以下要求编写程序:
1)实例化一个ArrayList,只存储String数据:
2)依次存入以下元素:孙悟空,猪八戒,白骨精,红孩儿
3)遍历集合,取出每个元素并打印;
代码实现:
package StudentJavaSEday07;
import java.util.ArrayList;
/**
* 1)实例化一个ArrayList,只存储String数据:
* 2)依次存入以下元素:孙悟空,猪八戒,白骨精,红孩儿
* 3)遍历集合,取出每个元素并打印;
*
* @author 奋斗蒙
*
*/
public class Demo {
public static void main(String[] args) {
ArrayList<String> al = new ArrayList<String>();
String a = "孙悟空";
String b = "猪八戒";
String c = "白骨精";
String d = "红孩儿";
al.add(a);
al.add(b);
al.add(c);
al.add(d);
for (int i = 0; i < al.size(); i++) {
System.out.println(al.get(i));
}
}
}
运行结果:
二、定义类:包含main()方法,按以下要求编写程序:
4)在类中定义方法String printList(ArrayList<Integer> list),表示:将集合内所有元素转换为一个字符串,并返回。
(注:请参考数组的实现)
例如:集合内元素:10,5,90,70,66,80,88
返回的字符串:{10, 5, 90, 70, 66, 80, 88}
代码实现:
package StudentJavaSEday07;
import java.util.ArrayList;
/**
* 在类中定义方法String printList(ArrayList<Integer> list),
* 表示:将集合内所有元素转换为一个字符串,并返回。
* (注:请参考数组的实现)
* 例如:集合内元素:10,5,90,70,66,80,88
* 返回的字符串:{10, 5, 90, 70, 66, 80, 88}
*
* @author 奋斗蒙
*
*/
public class Demo2 {
public static void main(String[] args) {
ArrayList<Integer> list = new ArrayList<Integer>();
list.add(10);
list.add(5);
list.add(90);
list.add(70);
list.add(66);
list.add(80);
list.add(88);
String str = printList(list);
System.out.println(str);
}
public static String printList(ArrayList<Integer> list) {
String str = "{";
for (int i = 0; i < list.size(); i++) {
if (i != (list.size() - 1)) {
str += list.get(i)+",";
} else {
str += list.get(i);
}
}
str += "}";
return str;
}
}
运行结果:
三、
定义类:Person(人),包含以下属性:
姓名:
性别:
年龄:
身份证号:
身高(米):
体重(公斤):
定义类:包含main()方法,按以下要求编写程序:
1)实例化一个Person对象p1;
2)为p1的各个属性赋值;
3)打印p1的各个属性值;
4)实例化第二个Person对象p2;
5)为p2的各个属性赋值;
6)打印p2的各个属性值;
然后将p1和p2 对象存进一个集合中,然后遍历这个集合,将所有的对象的信息打印 出来。
实现代码:
package StudentJavaSEday07;
public class Person {
String name; // 姓名
String sex; // 性别
int age; // 年龄
String ID; // 身份证
double height; // 身高
double weight; // 体重
public Person(String name, String sex, int age, String iD, double height, double weight) {
super();
this.name = name;
this.sex = sex;
this.age = age;
ID = iD;
this.height = height;
this.weight = weight;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getID() {
return ID;
}
public void setID(String iD) {
ID = iD;
}
public double getHeight() {
return height;
}
public void setHeight(double height) {
this.height = height;
}
public double getWeight() {
return weight;
}
public void setWeight(double weight) {
this.weight = weight;
}
}
package StudentJavaSEday07;
/**
* 定义类:Test1,包含main()方法,按以下要求编写程序:
* 1)实例化一个Person对象p1;
* 2)为p1的各个属性赋值;
* 3)打印p1的各个属性值;
* 4)实例化第二个Person对象p2;
* 5)为p2的各个属性赋值;
* 6)打印p2的各个属性值;
* @author 奋斗蒙
*/
public class Test {
public static void main(String[] args) {
Person p1 = new Person(null, null, 0, null, 0, 0);
p1.name = "孙悟空";
p1.sex = "男";
p1.age = 999999;
p1.ID = "0000000001";
p1.height = 180.00;
p1.weight = 50.00;
Person p2 = new Person(null, null, 0, null, 0, 0);
p2.name = "赵云";
p2.sex = "男";
p2.age = 888888;
p2.ID = "0000000002";
p2.height = 190.00;
p2.weight = 70.00;
System.out.print("姓名:"+p1.name+"; ");
System.out.print("性别:"+p1.sex+"; ");
System.out.print("年龄:"+p1.age+"; ");
System.out.print("身份证:"+p1.ID+"; ");
System.out.print("身高:"+p1.height+"; ");
System.out.println("体重:"+p1.weight+"; ");
System.out.println("---------------------------------");
System.out.print("姓名:"+p2.name+"; ");
System.out.print("性别:"+p2.sex+"; ");
System.out.print("年龄:"+p2.age+"; ");
System.out.print("身份证:"+p2.ID+"; ");
System.out.print("身高:"+p2.height+"; ");
System.out.println("体重:"+p2.weight+"; ");
}
}
运行结果:
四、定义一个集合,只能存储String 类型的数据,然后创建一个键盘录入的Scanner对象,要求该集合可以一直循环录入数据,直到在控制台录入字符串 exit, 跳出循环。结束键盘录入。
代码实现:
package StudentJavaSEday07;
import java.util.ArrayList;
import java.util.Scanner;
/**
* 定义一个集合,只能存储String 类型的数据,
* 然后创建一个键盘录入的Scanner对象,
* 要求该集合可以一直循环录入数据,
* 直到在控制台录入字符串exit,
* 跳出循环。 结束键盘录入。
*
* @author 奋斗蒙
*/
public class Demo3 {
public static void main(String[] args) {
ArrayList<String> list = new ArrayList<String>();
while (true) {
for (int i = 0; i == list.size(); i++) {
Scanner sc = new Scanner(System.in);
System.out.println("请输入一个字符串(程序退出请输入exit):");
String next = sc.next();
if ("exit".equals(next)) {
System.out.println("程序已经退出!");
return;
}
list.add(next);
}
}
}
}
运行结果:
思考作业:
定义类,定义main()方法,按以下要求编写代码:
定义类Dog,要求有以下成员:
成员属(私有):
名称:
性别:
年龄:
构造方法:
无参:
全参:
成员方法:
get/set方法
在main()方法中,按以下要求编写代码:
1)实例化一个只存储Dog对象的ArryayList集合;
2)向集合中添加三个Dog对象:
“金毛”, ’公’, 2
“哈士奇”,’公’, 1
“藏獒”, ‘母’, 3
3)再次向集合中添加一个Dog对象
“哈士奇”,‘公’, 1
4)遍历集合,打印每个Dog对象,观察是否存储了两个”相同的对象”;
5)如果希望不存储”相同的对象”,应该怎么做?