欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Java jmu-Java-05集合-List中指定元素的删除

程序员文章站 2024-04-02 21:48:52
编写以下两个函数/*以空格(单个或多个)为分隔符,将line中的元素抽取出来,放入一个List*/public static List convertStringToList(String line) /*在list中移除掉与str内容相同的元素*/public static void remove(List list, String str)裁判测试程序:public class Main { /*covnertString...

编写以下两个函数

/*以空格(单个或多个)为分隔符,将line中的元素抽取出来,放入一个List*/
public static List<String> convertStringToList(String line) 
/*在list中移除掉与str内容相同的元素*/
public static void remove(List<String> list, String str)

裁判测试程序:

public class Main {

    /*covnertStringToList函数代码*/   

    /*remove函数代码*/

     public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNextLine()){
            List<String> list = convertStringToList(sc.nextLine());
            System.out.println(list);
            String word = sc.nextLine();
            remove(list,word);
            System.out.println(list);
        }
        sc.close();
    }

}

样例说明:底下展示了4组测试数据。

###输入样例

1 2 1 2 1 1 1 2
1
11 1 11 1 11
11
2 2 2 
1
1   2 3 4 1 3 1
1

###输出样例

[1, 2, 1, 2, 1, 1, 1, 2]
[2, 2, 2]
[11, 1, 11, 1, 11]
[1, 1]
[2, 2, 2]
[2, 2, 2]
[1, 2, 3, 4, 1, 3, 1]
[2, 3, 4, 3]
	public static List<String> convertStringToList(String line)
	{
		List<String> list=new ArrayList<String>();
		String line1[]=line.split("\\s+");// \\s+表示多个空白符
		for(int i=0;i<line1.length;i++)
		{
			list.add(line1[i]);
		}
		return list;
	}
	
	public static void remove(List<String> list,String s)
	{
		for(int i=0;i<list.size();)
		{
			if(s.equals(list.get(i)))
			{
				list.remove(i);
				i=0;//注意i要置为0
			}
			else{i++;}
		}
	}

本文地址:https://blog.csdn.net/inooll/article/details/109817204

相关标签: java