-->
当前位置:首页 > 题库 > 正文内容

编程题:jmu-java-m02-使用列表管理姓名

Luz3年前 (2022-10-06)题库429
输入若干行字符串,每行代表一个姓名,依次存入数组列表(类型为ArrayList)nameList中,**每个名字只能加入一次**。

现在nameList相当于一个存储姓名的数据库,可以对nameList进行适当的操作,以实现姓名管理系统。

### 输入与输出格式:

输入不定个数的姓名字符串,直到遇到**end**为止,依次将字符串存入数组列表nameList。**注意:每个名字只能存1次**。
输出nameList中所有元素。(请使用System.out.println(nameList)输出列表元素。)

**接下来:**

输入下标i
输入字符串x,然后加到nameList的第i个位置。
输入下标j,然后移除下标为j的姓名。
**输出**nameList中所有元素。

**最后:**

输入字符串name1
输入字符串name2
输出字符串name1所在下标k(从前往后找)。
如果k>=0,将name2放在nameList中下标k位置处(即,替换掉原来k位置的元素)。否则,如果k=-1,将name2直接添加nameList最后一个元素之后。
最后输出nameList。

### 输入样例1:

in
Tom
Jerry
tom
Tom
Zhang san
Li Si
Zhang san
li si
end
3
Sunxingzhe
1
tom
Jack



### 输出样例1:


out
[Tom, Jerry, tom, Zhang san, Li Si, li si]
[Tom, tom, Sunxingzhe, Zhang san, Li Si, li si]
k=1
[Tom, Jack, Sunxingzhe, Zhang san, Li Si, li si]



### 输入样例2:

in
a
a
a
b
b
b
c
c
c
b
b
b
a
a
a
a
end
1
d
3
f
z



### 输出样例2:

out
[a, b, c]
[a, d, b]
k=-1
[a, d, b, z]








答案:若无答案欢迎评论

1. ArrayList的基础用法,详见[PTA中提交Java程序的一些套路](https://www.cnblogs.com/zhrb/p/6347738.html)中的**6.动态创建数组与ArrayList**。
2. ArrayList的详细用法请参考JDK文档。
3. 处理输入时,不要将nextLine与其他next方法混用。
4. "输出字符串name1所在下标k",可使用ArrayList中的某个方法直接实现.详见JDK文档.




发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。