我对Java中的StringPool感到困惑.我在阅读Java中的String章节时遇到过这个问题.请以外行的方式帮助我理解StringPool实际上做了什么.
Java String trim不会为我删除空格字符.
String rank = (some method);
System.out.println("(" + rank + ")");
Run Code Online (Sandbox Code Playgroud)
输出是(1 ).注意1右边的空格.
我必须从字符串中删除尾随空格,rank但既不删除它rank.trim()也不rank.replace(" ","")删除它.
rank无论哪种方式,字符串都保持不变.
编辑:完整代码 ::
Document doc = Jsoup.connect("http://www.4icu.org/ca/").timeout(1000000).get();
Element table = doc.select("table").get(7);
Elements rows = table.select("tr");
for (Element row: rows) {
String rank = row.select("span").first().text().trim();
System.out.println("("+rank+")");
}
Run Code Online (Sandbox Code Playgroud)
为什么我不能删除那个空间?
这就是我所拥有的:
public void readFile(String fileToOpen) {
File myFile = new File(fileToOpen);
try {
Scanner inFile = new Scanner(myFile);
while (inFile.hasNext()) {
String input = inFile.nextLine();
String [] readString = input.split(",");
for (int i = 0; i < readString.length; i++) {
readString[i].trim();
}
System.out.println(readString[0] + readString[1] + readString[2] + readString[3] + readString[4] + readString[5]);
Point myPoint = new Point(Integer.parseInt(readString[1]), Integer.parseInt(readString[2]));
if (readString[0].toLowerCase().equals("man")) {
Man myMan = new Man(myPoint, Integer.parseInt(readString[3]), Integer.parseInt(readString[4]), readString[5]);
this.myList.add(myMan);
} else if (readString[0].toLowerCase().equals("woman")) {
Woman myWoman = new …Run Code Online (Sandbox Code Playgroud)