我正在做一个项目,只是想进行一些练习编程。我遇到了一个颠簸。
我正在尝试从组织如下的文本文件中获取名称:["name", "name", "name", "name"]
并将每个名称转换为不带标点符号的名称,并将它们转换为ArrayList
.
一旦名称在列表中,我将使用我拥有的另一段代码对它们进行排序。任何人都可以帮我解决这个问题吗?
您可以String#split
在,
分隔符上并从结果数组项中删除所有"[]
字符。
ArrayList
这将从数组中创建一个:
List<String> list = new ArrayList<String>(Arrays.asList(stringArray));
剧透
String names = "[\"Tony Parker\", \"John Smith\", \"Michelle\", \"David\"]";
System.out.println(Arrays.asList(names.replaceAll("[\\[\\]\"]", "").split(", ")));
干得好。这向您展示了如何获取名称字符串并将每个名称放入数组列表的基础知识
import java.util.ArrayList;
public class Practice
{
public static void main(String[] args)
{
// Initialize Variables
String names = "['Tony Parker', 'John Smith', 'Michelle', 'David']";
ArrayList<String> namesList = new ArrayList<String>();
int startingPoint = 0;
// Replace All Unwanted Characters In String With White Space
names = names.replace("[", "").replace("]", "").replace("'", "");
// Trim The String Down And Then Add A Comma At The End
names.trim();
names = names + ",";
// For Each Comma That Is Encountered, Add The Name into The ArrayList
for (int i = 0; i < names.length(); i++)
{
if (names.charAt(i) == ',')
{
namesList.add(names.substring(startingPoint, i));
startingPoint = i +1;
}
}
// Print Out The Array List Of Names
System.out.println(namesList);
}
}
您真的应该在这里阅读如何提出更好的问题,但这里有两个链接可以帮助您入门:
http://www.leepoint.net/notes-java/io/10file/10readfile.html
http://docs.oracle.com/javase/1.4.2/docs/api/java/lang/String.html#split(java.lang.String )