2016-03-23 23 views
-6

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

Ошибки:

Range.java:3: error: class range is public, should be declared in a file named range.java public class range

и

Range.java:16: error: no suitable method found for println(String,int,String,int,String) System.out.println("The number of values in the range from", n1, "to", n2, "is: ");

import java.util.Scanner; 

    public class range 
    { 
    public static void main(String[] args) 
    { 
     System.out.println("Please enter two integers: "); 

     int n1, n2; 


     Scanner keyboard = new Scanner(System.in); 
     n1 = keyboard.nextInt(); 
     n2 = keyboard.nextInt(); 

     System.out.println("The number of values in the range from", n1, "to", n2, "is: "); 
     System.out.println(n2 - n1); 
    } 
    } 
+3

Ваш class называется 'range', но он находится в файле с именем' Range.java'. Имена класса и файла, в котором он находится, должны совпадать. Либо измените имя класса на 'public class Range', либо измените имя файла на' range.java'. Кроме того, вы должны прочитать о конкатенации String, чтобы решить вторую ошибку. – jonhopkins

+4

Что вы не понимаете в сообщениях об ошибках? – Reimeus

+1

println принимает один аргумент 'String': System.out.println (« Число значений в диапазоне от «+ n1 +» до «+ n2 +» равно: »); – Bajal

ответ

1

Сообщения об ошибках понятны.

Прежде всего, поместите свой код в файл с именем range.java, и я настоятельно рекомендую вам изменить его на Range.

Затем измените Println строку: System.out.println("The number of values in the range from "+ n1 + " to "+ n2 + "is: ");

+0

Спасибо! Это прекрасно работает! – Matt

0

Range.java:3: error: class range is public, should be declared in a file named range.java public class range

Файл, где этот класс пишется потребности называться range.java, так как range класс является общедоступным.

Range.java:16: error: no suitable method found for println(String,int,String,int,String) System.out.println("The number of values in the range from", n1, "to", n2, "is: ");

System.out.println() принимает только один параметр, в то время как вы пытаетесь передать 5.

Если вы хотите выводить несколько значений в одной строке, то лучше использовать format():

System.out.format("The number of values in the range from %d to %d is:", n1, n2"); 
Смежные вопросы