Arrary.equal (charAt) не может быть найден - PullRequest
0 голосов
/ 03 декабря 2018

Я кодирую программу, которая ищет определенный символ и отображает его позицию, как только он найден в строке, которая вводится пользователем.Я попытался изменить синтаксис на линии, где появляется ошибка, но та же ошибка продолжает возникать.Я очень плохо знаком с программированием, поэтому я был бы очень признателен за помощь !!

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

Ответы [ 3 ]

0 голосов
/ 03 декабря 2018

равно () мой друг: D, я бросил много подобных проблем xD.

рекомендует использовать intellij ide, чтобы избежать синтаксических ошибок.

0 голосов
/ 03 декабря 2018

Для сравнения двух символов лучше использовать ==, потому что метод equals используется для строк и объектов.

 if (character == charAt){
     return position;
 }
0 голосов
/ 03 декабря 2018

Это должно быть character.equals(charAt)), а не character.equal(charAt)), и вам нужно сравнить String с String, а не Char с String.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...