程序在句子中的空格前后打印字母

时间:2015-06-10 10:24:56

标签: java char

示例 - 输入: - 印度是一个伟大的国家               输出: - a和i,s和a,a和g,t和n

public class PrintSpace
{
    public void accept(String str)
    {
        char ch='\u0000';
        int i=0;
        int l=0;
        l=str.length();
        for(i=0;i<l;i++)
        {
            ch=str.charAt(i);
            if(ch==" ")
            {
                System.out.print((i-1)+"and"+(i+1));
            }
        }
    }
}

2 个答案:

答案 0 :(得分:1)

试试这个:

    public static void accept(String str)
    {
        char ch='\u0000';
        int i=0;
        int l=0;
        l=str.length();
        for(i=0;i<l;i++)
        {
            ch=str.charAt(i);
            if(ch == ' ')
            {
                System.out.println(str.charAt(i-1)+" and "+str.charAt(i+1));
            }
        }
    }

答案 1 :(得分:1)

char无法与String进行比较。

<强>替换

if(ch == " ") 
 {
 }

<强>与

if(ch == ' ')
 {
 }
  

您正在打印索引,而不是字符

     

使用str.charAt(i- 1) + " and "+ str.charAt(i + 1)

char ch='\u0000';
int i=0;
int l=0;
String str = "India is a great nation";
l=str.length();
for(i=0;i<l;i++)
  {
     ch=str.charAt(i);
     if(ch==' ')
       {
         System.out.println(str.charAt(i-1)+"and"+str.charAt(i+1));
       }
   }