Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > Исправление ощибки


Автор: Гость_Гость 22.4.2005, 02:22
Народ помогите исправить ощибку. Она в самом начале. Заранее спасибо.

Код

public static void main(String[] args){

    new Max(10,2);
}



 class Max{ 
    
    
    public static void main(String[] args){
        
        int arg1 = Integer.parseInt(args[0]); // Parsen der Eingabewerte
        int arg2 = Integer.parseInt(args[1]);
        
        int maximum = max(arg1, arg2);
        System.out.println(maximum);
    }
    public static int max(int x, int y){if (x>y) return x; else return y;}
    
    
}


smile

Автор: Domestic Cat 22.4.2005, 02:45
Какая ошибка?

Автор: Zandr 22.4.2005, 06:51
Ты пытаешься создать объект класса Max, через конструктор, берущий два int. Но такой конструктор в классе Max у тебя не объявлен.
Замени-ка в верхнем методе main
Код

new Max( 10, 2);

на
Код

Max.main( "10", "2");

--------------
И еще. У тебя верхний метод main() сам по себе болтается или внутри класса? Если сам по себе..... читаем Thinking in Java.

Автор: batigoal 22.4.2005, 10:00
Позвольте просуммировать smile
Видимо, ты хотел сделать что-то вроде этого:
Код

public class Max
{
    public static void main(String[] args)
    {
        int arg1 = Integer.parseInt(args[0]);
        int arg2 = Integer.parseInt(args[1]);

        int maximum = max(arg1, arg2);
        System.out.println(maximum);
    }

    public static int max(int x, int y)
    {
        return (x > y) ? x : y;
    }
}


и затем запустить программу с параметрами:
java Max 10 2

Автор: Zandr 22.4.2005, 11:17
2 Lamer George smile smile smile
Код

return (x > y) ? x : y;

Автор: batigoal 22.4.2005, 11:33
Zandr
Сэнкс. Исправил. smile

Автор: Guest 22.4.2005, 20:17

Zandr,

поменял и вот что мне Eclipse пишет:


Exception in thread "main" java.lang.Error: Unresolved compilation problem:

at Max.main(Max.java:27)
Цитата(Zandr @ 22.4.2005, 06:51)
Zandr


Автор: Guest 22.4.2005, 20:24
Lamer George,

написал, и вот что Eclipse пишет:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at Max.main(Max.java:5)

---------------------------------------------------------------------------------------------
Код


public class Max
{
    public static void main(String[] args)
    {
        int arg1 = Integer.parseInt(args[0]);
        int arg2 = Integer.parseInt(args[1]);
        int maximum = max(arg1, arg2);
        System.out.println(maximum);
    }
    public static int max(int x, int y)
    {
        return (x > y) ? x : y;
    }


}




я там в прог.е код написал и RUN AS APPLICATION *( у меня Winows поэтому немогу использовать консоле)
smile

Автор: Domestic Cat 22.4.2005, 20:33

 ! 
 
Пожалуйста, пользуйся тегами [cоde=java][/codе]

Автор: -L George- 23.4.2005, 09:20
В Идее (в Эклипсе, наверное, тоже) там, где устанавливаешь параметры запуска, должно быть что-нибудь вроде поля Command Line Parameters, туда надо вписать два числа через пробел(10 2)

Что за хрень?.. Не могу добавлять сообщения под своим ником.

Автор: Domestic Cat 23.4.2005, 09:38
Цитата(L @ 23.4.2005, 00:20)
Что за хрень?.. Не могу добавлять сообщения под своим ником.


Вроде бы никаких проблем с ником нет.

Автор: batigoal 23.4.2005, 11:39
Слышал, есть лимит сообщений на сутки. Может, перебрал?..

Автор: Zandr 25.4.2005, 06:20
Цитата
у меня Winows поэтому немогу использовать консоле

Тяжелый случай...

И отложи-ка на время Eclipse и любую другую лабуду в которой есть кнопочка "Run" и куча всяких крыжиков. Возьми простой текстовый редактор типа http://www.editplus.com с подсветкой, http://www.code-chimp.net/eckel/TIJ-3rd-edition4.0.zip Брюса Эккеля, самый необходимый http://ant.apache.org/ и разбирайся. Ты же не очередной Вася Пупкин?

примечание. На счет консоле: Пуск->Выполнить->cmd

Автор: Domestic Cat 25.4.2005, 06:39
Я пользую консоль из под VS.NET хотя по сравнению с юниховской ацтой как ни крути.

Автор: Guest 25.4.2005, 22:34

Rebyata pasibo za vash pomosh'


ya poproboval RUN DOS v Total Commander -> poluchaetsa



@Zandr to chto ti sovetoval rabotaet.

-- A tak ya vas esho budu muchat' s moimi voprosami

PS:

class Max{


public static void main(String[] args){

int arg1 = Integer.parseInt(args[0]);
int arg2 = Integer.parseInt(args[1]);

int maximum = max(arg1, arg2);
System.out.println(maximum);

}
public static int max(int x, int y){if (x>y) return x; else return y;}
}

Автор: Domestic Cat 26.4.2005, 00:36
Цитата(Guest @ 25.4.2005, 13:34)
A tak ya vas esho budu muchat' s moimi voprosami

Зарегись тогда, а то так неприкольно как-то.
Цитата(Guest @ 25.4.2005, 13:34)
PS:

class Max{


Я ж прошу прошу теги использовать... smile smile smile

Автор: BigN 29.4.2005, 00:20
Domestic Cat
uje davno sdelal ;)

Автор: BigN 5.5.2005, 13:48

Народ как то у меня с avarage не получается :

smile
Код

class aufgabe3{

    public static void main(String[] args){

    
        int [] p = new int [100];
        for (int m=0; m<100; m++){
            p[m]=(int)(Math.random()*100);
        }
        
        for (int z = 0; z < 100; z++) {
            if (z==0)  { System.out.print("{" + p[z] + " : ");}
            if (z==99) { System.out.print(      p[z] + " } ");}
            else         System.out.print(      p[z] + " : ");
        }
        double av =avarage(p);
        System.out.print(" Mittelwert: " + av);
    }    


    public static int max(int a[]){

        int maxx=0;
        for (int i=0; i<a.length; i++){
            if (a[i] > maxx) {maxx=a[i];}
        }
        return maxx;
    }
        public static int min(int a[]){
            int minn=a[0];
            for (int i=0; i<a.length;i++) { 
                if (a[i] < minn){ minn=a[i]; }
            }
            return minn;
        }
    
    
    

    public static double avarage(int a[]){
        double sum = 0.0;
        int    n = a.length;
        for (int i=1; i<=n; i++)
            sum+=a[i];
        return sum/n;
    }
     public static double deviation(int a[], double avarage){
        double sum = 0.0;
        int n = a.length;
        for (int i=1; i<=n; i++)
            sum+=(avarage-a[i])*(avarage-a[i]);
        
        return Math.sqrt(sum/(n-1));


    }
}





Автор: BigN 5.5.2005, 13:50
smile

Автор: batigoal 5.5.2005, 13:56
При переборе нумерация - с 0, а знак должен быть < :
Код

for (int i=0; i<n; i++)

Автор: BigN 5.5.2005, 14:59
pasibo rabotaet

Автор: Zandr 6.5.2005, 06:41
BigN С паскаля к нам? smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)