本习题主要用于练习如何使用ArrayList来替换数组。 新建1个ArrayList<String> strList用来存放字符串,然后进行如下操作。
提示: 查询Jdk文档中的ArrayList。 注意: 请使用System.out.println(strList)输出列表元素。
输入格式
输入 n个字符串,放入strList。直到输入为!!end!!时,结束输入。在strList头部新增一个begin,尾部新增一个end。输出列表元素输入: 字符串str判断strList中有无包含字符串str,如包含输出true,否则输出false。并且输出下标,没包含返回-1。在strList中从后往前找。返回其下标,找不到返回-1。移除掉第1个(下标为0)元素,并输出。然后输出列表元素。输入: 字符串str将第2个(下标为1)元素设置为字符串str.输出列表元素输入: 字符串str遍历strList,将字符串中包含str的元素放入另外一个ArrayList strList1,然后输出strList1。在strList中使用remove方法,移除第一个和str相等的元素。输出strList列表元素。使用clear方法,清空strList。然后输出strList的内容,size()与isEmpty(),3者之间用,连接。
输入样例:
a1 b1 3b a2 b2 12b c d !!end!!
b1
second
b
输出样例:
[begin, a1, b1, 3b, a2, b2, 12b, c, d, end]
true
2
2
begin
[a1, b1, 3b, a2, b2, 12b, c, d, end]
[a1, second, 3b, a2, b2, 12b, c, d, end]
[3b, b2, 12b]
[a1, second, 3b, a2, b2, 12b, c, d, end]
[],0,true
答案
import java
.util
.ArrayList
;
import java
.util
.Scanner
;
public class Main {
public static void main(String
[] args
) {
Scanner scanner
= new Scanner(System
.in
);
ArrayList
<String> strList
= new ArrayList<>();
while (true){
String str
= scanner
.next();
if(str
.equals("!!end!!")){
break;
}
strList
.add(str
);
}
strList
.add(0,"begin");
strList
.add("end");
System
.out
.println(strList
);
String str
= scanner
.next();
if (strList
.contains(str
)){
System
.out
.println("true");
}else{
System
.out
.println("false");
}
System
.out
.println(strList
.indexOf(str
));
boolean flag
= true;
for (int i
= strList
.size() - 1; i
>= 0; i
--) {
if (strList
.get(i
).equals(str
)){
System
.out
.println(i
);
flag
= false;
break;
}
}
if (flag
){
System
.out
.println("-1");
}
System
.out
.println(strList
.get(0));
strList
.remove(0);
System
.out
.println(strList
);
str
= scanner
.next();
strList
.set(1,str
);
System
.out
.println(strList
);
str
= scanner
.next();
ArrayList
<String> strList1
= new ArrayList<>();
for (String s
: strList
){
if (s
.contains(str
)){
strList1
.add(s
);
}
}
System
.out
.println(strList1
);
for (String s
: strList
){
if (s
.equals(str
)){
strList
.remove(str
);
break;
}
}
System
.out
.println(strList
);
strList
.clear();
System
.out
.println(strList
+ "," + strList
.size() + "," + strList
.isEmpty());
}
}