[英]Issue with output of java program involving string
class Blue_ManTest{
public static void main(String[] args){
String name = "I LOVE JAVAWORLD";
int index1 = name.indexOf(" ");
int index2 = name.lastIndexOf(" ");
String str1 = name.substring(0, index1);
String str2 = name.substring(index1 + 1, index1+ 5);
String str3 = name.substring(index2 + 5);
System.out.println(str3 + ", " + str1 + " " + str2 + ".");
}
}
我想弄清楚該程序的輸出是什么,我想我知道,但是不確定。
我這樣做是因為我愛JavaWorld,其中0對應於j,15對應於D,其中1是空格。
對於str1
我得到I
對於str2
我得到Love
但是對於str3
我得到avaWorld
但是str3
對我來說似乎是錯誤的,因為它將打印出來。
avaWorld, I Love.
您的str3
變量采用以index2 + 5
開頭的子字符串,其中index2
是輸入字符串中最后一個空格的索引:
int index2 = name.lastIndexOf(" ");
也就是說, index2
是6。當然6 + 5是11。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.