想法是想判断有无空格,根据空格来操作单词。对字符串数组还是不熟悉,只会最基本概念。以为取到 c[] 里面的是 c[0]=I ,c[1]=am,c[2]=a,c[3]=student. 了 。测试后发现不是。。T T 结果 目前只到这一步 : .tneduts a ma I . 16 号要完成。
public class ReverseS
{
<span style="white-space:pre"> </span>public static void main(String[] args)
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>String a[] = new String[100];
<span style="white-space:pre"> </span>String s ="I am a student.";
<span style="white-space:pre"> </span>String c[] = new String[100];
<span style="white-space:pre"> </span>char b[] = s.toCharArray();
<span style="white-space:pre"> </span>int k,m=0,e=0;
<span style="white-space:pre"> </span>for (int i=0;i<b.length;i++)
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>if (b[i]==' '||b[i]=='.')
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>k=i-1;
<span style="white-space:pre"> </span>if (b[i]=='.')
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>k++;
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>for (;m<=k;m++)
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>c[e]=b[m]+"";
<span style="white-space:pre"> </span>e++;
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>for (int l=e-1,q=0;q<=e-1;q++,l--)// 之前q<e-1 的时候,第一个字符取不到。
<span style="white-space:pre"> </span>{
<span style="white-space:pre"> </span>a[q]=c[l];
<span style="white-space:pre"> </span>System.out.print(a[q]);
<span style="white-space:pre"> </span>}
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>
}
<span style="white-space:pre"> </span>
<span style="white-space:pre"> </span>
}