首页 > 解决方案 > 无法找到 Arrary.equal(charAt)

问题描述

我正在编写一个程序,该程序搜索特定字符并在用户输入的字符串中找到它后立即显示它的位置。我尝试在弹出错误的线上更改语法,但同样的错误继续发生。我对编码很陌生,所以我非常感谢您的帮助!

import java.util.Scanner;

public class Lab10
{
   public static String character;
   public static String input;
   public static int position;
   public static StringBuilder str = new StringBuilder(input);


      public static void main(String[] args)
      {         
         Scanner keyboard = new Scanner(System.in);

         System.out.print("Enter a string: ");
         input = keyboard.nextLine();

         System.out.print("Enter a character: ");
         character = keyboard.nextLine();

         System.out.println(" ");

         getPosition();

         System.out.print("The position of the first '" +   character +"' found is" + position);        
       }

     public static int getPosition()
     {
        for (position = 0; position <= str.length(); position++)
        {  
            char charAt = str.charAt(position);

            if (character.equals(charAt))
            {
               return position;
            }
            else
            {
               position++;
            }      
         }
         return position;
     }

}

谢谢大家指出我的语法错误。在我修复错误后它编译得很好,但是当我尝试在终端/cmd中编译它时出现了另一个错误

Exception in thread "main" java.lang.ExceptionInInitializerError Caused     by: java.lang.NullPointerException  at java.lang.S

标签: javaarrayscompiler-errors

解决方案


这应该character.equals(charAt))不是character.equal(charAt)),您需要将Stringa StringnotChar与 a进行比较String


推荐阅读