java中的字符串长度

时间:2011-05-23 15:52:11

标签: java android

String h;
h=(String) Tok.nextElement();
System.out.println("" + ++n +": "+h);
h.trim();   
System.out.println("The length of h :"+n+h.length());
wordlist[now]=h;
System.out.println("Now length is"+wordlist[now].length());

这个“\ u0B9A \ u0BBF \ u0BAF \ u0BA9”是分配给h的字符串。输出是

  

h的长度:128

     

现在长度为41

我完全糊涂了:(请帮忙。抱歉.pblm不是运营商,但长度也注意h的长度是128 !!其中实际长度是28

3 个答案:

答案 0 :(得分:5)

wordlist[now++]=hh分配给wordlist[now]然后增加now,之后wordlist[now]最有可能 h(除非之前已有)。

您可能希望改用wordlist[++now]=h。更好的是,避免在语句中使用递增器。

答案 1 :(得分:2)

我认为这是你的String concat的问题。

System.out.println("The length of h :"+n+h.length());

h的长度实际为28.但是之前你把var “n”放在那里,我认为n的值是1。

由于你用String连接,而不是sum n和h,它将只连接n和h为String

所以n + h.length =“1”+“28”=“128”

换句话说,请将您的语法更改为:

System.out.println("The length of h :"+h.length());

我也想评论这种语法:

h.trim();

拥有此语法的目的是什么?如果要修改变量h,则应将其分配给var h。

h=h.trim();

答案 2 :(得分:1)

这种差异源于您使用now++语句的位置/方式。

首先,您将获得位于wordlist[now](预增量)的字符串的长度,并且在后续语句中,您将获得字符串的长度wordlist[now+1](后增量)。