Форум программистов, компьютерный форум, киберфорум
Java для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/5: Рейтинг темы: голосов - 5, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 09.09.2021
Сообщений: 18

Index 0 out of bounds

11.09.2022, 21:26. Показов 1389. Ответов 4
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, уважаемые форумчане! Выдает такую ошибку: Index 0 out of bounds for length 0 at my.code.java.Main.main(Main.java:105)

Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
package my.code.java;
 
class PizzaType {
    String ingredients[];
    private int price;
    
    void setPrice(int price) {
        this.price = price;
    }
    
    int getPrice() {
        return price;
    }
    
}
 
class Pizza {
    double price = 0;
    int num;
    double sizeMod;
    boolean GreensOn;
    boolean SauceOn;
    Pizza(PizzaType type, int num, String size, boolean greens,
          boolean sauce) {
        this.num = num;
        switch(size) {
            case("small"):
                this.sizeMod = 1;
                break;
            case("medium"):
                this.sizeMod = 1.5;
                break;
            case("big"):
                this.sizeMod = 2;
                break;
            default:
                this.sizeMod = 1;
                break;
        }
        this.price = type.getPrice();
        if(GreensOn) this.price += 10;
        if(SauceOn) this.price += 15;
        this.price *= sizeMod;
    }   
}
 
class Day {
    int p_num;
    Day(int p_num) {
        this.p_num = p_num;
    }
    Pizza order[] = new Pizza[p_num];
    int defineDayIncome() {
        int income = 0;
        for(int i = 0; i < order.length; ++i) {
            income += order[i].num * order[i].price;
        }
        return income;
    }
}
 
public class Main {
 
    public static void main(String args[]) {
        
        // Classic Pizza
        PizzaType classic = new PizzaType();
        classic.ingredients = new String[] {"cheese", "meet"};
        classic.setPrice(200);
        
        // Cheese Pizza
        PizzaType cheese = new PizzaType();
        cheese.ingredients = new String[] {"cheese", "onions"};
        cheese.setPrice(190);
        
        // Vegetable Pizza
        PizzaType vegetable = new PizzaType();
        vegetable.ingredients = new String[] {"tomatoes", "onions"};
        vegetable.setPrice(280);
        
        // Sunday
        Pizza PSun1 = new Pizza(classic, 16, "middle", true, true);
        Pizza PSun2 = new Pizza(classic, 3, "big", true, false);
        Pizza PSun3 = new Pizza(cheese, 20, "middle", false, true);
        Pizza PSun4 = new Pizza(cheese, 9, "big", false, false);
        Pizza PSun5 = new Pizza(vegetable, 13, "small", true, true);
        Pizza PSun6 = new Pizza(vegetable, 15, "small", false, true);
        
        Day Sun = new Day(6);
        Sun.order[0] = PSun1;
        Sun.order[1] = PSun2;
        Sun.order[2] = PSun3;
        Sun.order[3] = PSun4;
        Sun.order[4] = PSun5;
        Sun.order[5] = PSun6;
        System.out.println(Sun.defineDayIncome());
        
    }   
 
}
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
11.09.2022, 21:26
Ответы с готовыми решениями:

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index 3 out of bounds for length 3
Всем привет есть следующий код который находит матрицу графа, но есть одна ошибка, и не знаю как ее исправить Код: package codejav; ...

Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: Index -1 out of bounds for length 9
at wtf.main(wtf.java:23) import java.util.Arrays; import java.util.Scanner; public class wtf { public static void...

list index out of bounds (0)
Делаю проверку на ввод повторяющихся значений в ключевое поле Artikuly. Работаю с ADO + Access. procedure...

4
Модератор
 Аватар для Curry
5158 / 3488 / 536
Регистрация: 01.06.2013
Сообщений: 7,567
Записей в блоге: 9
11.09.2022, 21:58
Java
1
    Pizza order[] = new Pizza[p_num];
Присваивайте значение в конструкторе, когда p_num уже установили.
Так же GreensOn, SauceOn значения забыли присвоить в конструкторе.
1
0 / 0 / 0
Регистрация: 09.09.2021
Сообщений: 18
11.09.2022, 22:14  [ТС]
А если я хочу передать значение p_num (как и GreensOn, SauceOn) как параметр-значение в Си, когда создаю новый объект Pizza? Что тогда делать?
0
Модератор
 Аватар для Curry
5158 / 3488 / 536
Регистрация: 01.06.2013
Сообщений: 7,567
Записей в блоге: 9
11.09.2022, 22:27
Лучший ответ Сообщение было отмечено Иван Калинин как решение

Решение

Вы уже передаёте greens, sauce как аргументы конструктора, так присвойте их значения к GreensOn, SauceOn.
Так же и
Java
1
2
3
4
5
6
7
8
9
class Day {
    int p_num;
    Pizza order[];
    Day(int p_num) {
        this.p_num = p_num;
        order = new Pizza[p_num];
    }
...
}
Да и ingredients лучше в конструкторе инициализировать.
2
0 / 0 / 0
Регистрация: 09.09.2021
Сообщений: 18
11.09.2022, 22:35  [ТС]
т.е. я имел ввиду, когда создаю объект Day. Я ведь, когда пишу вот так: Day(6), говорю, что нужно выделить место под шесть элементов в массиве order объекта Day.

Добавлено через 6 минут
Curry, благодарю Вас! Все заработало. Просто, пока перехожу с Си на Java, приходится привыкать к ООП парадигме))) Еще раз спасибо!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
11.09.2022, 22:35
Помогаю со студенческими работами здесь

Index was outside the bounds of the array
using System; using System.Collections.Generic; using System.Linq; namespace лр144 { class Program { ...

list index out of bounds
Добрый вечер, у меня возникла проблема при подключении базы к приложению, при выводе таблици на форму поля есть, а данных нет, и...

List index out of bounds (0)
Добро всем! Вот такой massage перед запуском программы мне выдает на XP и только на одном ПК, причем windows XP ставился с одного диска...

Index was outside the bounds of the array
Всем привет, есть задание, надо создать программу которая используя частотный анализ будет расшифровывать текст. Начал писать первый...

List index out of bounds (0)
Доброго времени суток, помогите разобраться с проблемой. Суть такая: Двигаем картинки по форме у напарника. Она работает, но только в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Новые блоги и статьи
Сумматор с применением элементов трёх состояний.
Hrethgir 26.03.2026
Тут. https:/ / fips. ru/ EGD/ ab3c85c8-836d-4866-871b-c2f0c5d77fbc Первый документ красиво выглядит, но без схемы. Это конечно не даёт никаких плюсов автору, но тем не менее. . . всё может быть. . .
Автозаполнение реквизитов при создании документа
Maks 26.03.2026
Код из решения ниже размещается в модуле объекта документа, в процедуре "ПриСозданииНаСервере". Алгоритм проверки заполнения реализован для исключения перезаписи значения реквизита, которое может. . .
Команды "Заполнить" и "Очистить" на форме документа
Maks 26.03.2026
1. Команда формы "ЗаполнитьЗапчасти". На примере нетипового документа разработанного в конфигурации КА2. В качестве источника данных указан регистр накопления, в который записываются данные о. . .
Кому нужен AOT?
DevAlt 26.03.2026
Решил сделать простой ланчер Написал заготовку: dotnet new console --aot -o UrlHandler var items = args. Split(":"); var tag = items; var id = items; var executable = args;. . .
Отправка уведомления на почту при изменении наименования справочника
Maks 24.03.2026
Программная отправка письма электронной почты на примере изменения наименования типового справочника "Склады" в конфигурации БП3. Перед реализацией необходимо выполнить настройку системной учетной. . .
модель ЗдравоСохранения 5. Меньше увольнений- больше дохода!
anaschu 24.03.2026
Теперь система здравосохранения уменьшает количество увольнений. 9TO2GP2bpX4 a42b81fb172ffc12ca589c7898261ccb/ https:/ / rutube. ru/ video/ a42b81fb172ffc12ca589c7898261ccb/ Слева синяя линия -. . .
Midnight Chicago Blues
kumehtar 24.03.2026
Такой Midnight Chicago Blues, знаешь?. . Когда вечерние улицы становятся ночными, а ты не можешь уснуть. Ты идёшь в любимый старый бар, и бармен наливает тебе виски. Ты смотришь на пролетающие. . .
SDL3 для Desktop (MinGW): Вывод текста со шрифтом TTF с помощью библиотеки SDL3_ttf на Си и C++
8Observer8 24.03.2026
Содержание блога Финальные проекты на Си и на C++: finish-text-sdl3-c. zip finish-text-sdl3-cpp. zip
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru