设计一个类Storage,包括一个void insert(String[] arr)方法,可多次调用该方法,将数据存入集合中,void search(String s)方法,可以将集合中包含s的数据输出,用逗号间隔
例如:
测试 | Result |
---|---|
Storage storage=new Storage(); String[] arr1={"hello","upc","good","eat","tall","java","math"}; storage.insert(arr1); String[] arr2={"swim","travel","sing","run","bike","car"}; storage.insert(arr2); storage.search("s"); | swim,sing |
解题思路:
需要设计一个Storage类,包含insert和search方法
insert方法用于将数据存入集中;
search方法用于将集合中包含特定字符串s的数据输出,并根据情况用逗号间隔;
首先构造集合存储字符串
private List<String> data = new ArrayList<>();然后是insert方法实现思路
void insert(String[] arr){for(String s:arr){data.add(s);} }遍历
arr
数组,将数组中的每个字符串元素添加到data
(ArrayList
)中。search方法实现:
s作为搜索关键字,遍历data中的每个字符串,根据found的状态决定是否添加“,”
void search(String s) {int found = 0;for (String str : data) {if (str.contains(s)) {if (found == 0) {System.out.print(str);found = 1;} else {System.out.print("," + str);}}} }
import java.util.ArrayList;
import java.util.List;class Storage{private List<String> data = new ArrayList<>();void insert(String[] arr){for(String s:arr){data.add(s);}}void search(String s) {int found = 0;for (String str : data) {if (str.contains(s)) {if (found == 0) {System.out.print(str);found = 1;} else {System.out.print("," + str);}}}}
}
public class Test {public static void main(String[] args) {Storage storage = new Storage();String[] arr1 = {"hello", "upc", "good", "eat", "tall", "java", "math"};String[] arr2 = {"swim", "travel", "sing", "run", "bike", "car"};storage.insert(arr1);storage.insert(arr2);storage.search("s");}
}