2015-11-16 3 views
-3

я получаю сообщение об ошибке, когда я не могу скомпилировать мой код из-за:ошибка Java: не может найти символ .hasNextInt()

error: cannot find symbol

while(numbers.hasNextInt()) {

symbol: method

hasNextInt() location: variable numbers of type String

Я считаю, что что-то делать с String, но я не совсем уверен.

//Takes a string of numbers, adds them together, and gives average 

import java.util.*; 
import java.io.*; 

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

     //intro 
     System.out.println("Enter a string of numbers with spaces between numbers"); 
     System.out.println("to signify the end of a number."); 
     System.out.println(); 

     //input 
     System.out.print("Enter numbers: "); 
     String numbers = console.nextLine(); 

     //processing 
     int sum = 0;//priming loop 
     int count = 0; 
     while(numbers.hasNextInt()) { 
     count++; 
     sum += numbers.nextInt(); 
     System.out.println("sum of " + count + " = " + sum); 
     } 
     System.out.println("average = " + (sum/count)); 
    } 
} 

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

+0

номер - это строка; в этом классе нет метода hasNextint(). – duffymo

ответ

3

Изменить

numbers.hasNextInt() 

в

console.hasNextInt()) 

Вам нужно вызвать метод hasNextInt() на Scanner объекта, а не на String.

+0

Кроме того, 'numbers.nextInt()' -> 'console.nextInt()'. –

+0

Конечно, но он понимает. Хотя я настоятельно рекомендую вам @Alex проверить JavaDocs. –

Смежные вопросы