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

Метод получает другой метод, как аргумент. Как это работает?

19.01.2018, 09:42. Показов 3290. Ответов 45
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый день, ребят. Есть такая программа:
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
package javaapplication13;
class Block{
    int a, b, c;
    int volume;
    
    Block (int i, int j, int k){
        a = i;
        b = j;
        c = k;
        volume = a*b*c;    
    }
    boolean sameBlock (Block ob){
        //ЗДЕСЬ ВЫВОДЯТСЯ ЗНАЧЕНИЯ ПОДПРОГРАММЫ OB2
        System.out.println ("ob.a = " + ob.a);
        System.out.println ("ob.b = " + ob.b);
        System.out.println ("ob.c = " + ob.c);
        //ЗДЕСЬ ВЫВОДЯТСЯ ЗНАЧЕНИЯ ПОДПРОГРАММЫ OB1
        System.out.println ("a = "+ a);
        System.out.println ("b = "+ b);
        System.out.println ("c = "+ c);
        if ((ob.a==a) & (ob.b==b) & (ob.c==c)) return true;
        else return false;
    }
    boolean sameVolume (Block ob){
        if (ob.volume == volume) return true;
        else return false;
    }
}
public class JavaApplication13 {
    public static void main(String[] args) {
     Block ob1 = new Block (10, 2, 5);
     Block ob2 = new Block (10, 2, 5);
     Block ob3 = new Block (4 ,5, 5);
     System.out.println ("ob1 имеет теже размеры, что и ob2: "+ ob1.sameBlock(ob2));
     System.out.println ("ob1 имеет те же размеры, что и ob3: "+ob1.sameBlock(ob3));
     System.out.println ("ob1 имеет тот же объем, что и ob3: "+ob1.sameVolume(ob3));
    }
    
}
Обратите внимание на методы в классе BLock. В качестве аргументов они получают объекты. Как это работает, я до сих пор не пойму, мне всегда казалось, что аргументами могут быть числа или слова, массив слов и чисел. А тут объект. Я второй день не могу понять, почему вы методе sameBlock 'ob.а' и 'а' не равны и откуда они берут значения? как работает ob1.sameBlock(ob2)? если можно очень простыми словами или на пальцах. Я только начинающий. Спасибо.
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
19.01.2018, 09:42
Ответы с готовыми решениями:

Как сделать так, чтобы можно было вписать другой метод(не знаю, как это описать )
есть код, нужно сделать так чтобы при вводе /op и /god работали независимо друг от друга: то есть, если я напишу в начале /god у меня...

Метод main и как им вызвать другой метод
Доброго всем времени суток. У меня возникла проблема. Вобщем дело такое. У меня есть тестовый класс Test, в котором существует 4 метода:...

Можно ли записать в аргумент метода, другой метод?
Доброго времени суток. Вопрос заключается в том, можно ли в аргументы метода записать метод типа double? Конкретно. У меня есть метод...

45
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2018, 11:39
Студворк — интернет-сервис помощи студентам

Давай так
Создаем объект Block ob1 = new Block (10, 2, 5); теперь ob1.a = 10, ob1.b = 2, ob1.c = 5.
Создаем объект Block ob3 = new Block (4 ,5, 5); теперь ob3.a = 4, ob3.b = 5, ob3.c = 5.
Вызываем метод объекта ob1 и передаем ему аргумент - объект ob3: ob1.sameBlock(ob3);
Т.е. для этого метода в данном случае ob3 становится ob.
Далее, обращения в методе:
a будет равно 10, b будет равно 2, c будет равно 5,
ob.a будет равно 4, ob.b будет равно 5, ob.c будет равно 5.

Ну, так-то хоть понятно???
0
42 / 42 / 5
Регистрация: 20.01.2015
Сообщений: 279
21.01.2018, 12:14
Цитата Сообщение от Aves Посмотреть сообщение
вот моя программа для того
Попробуйте на ютубе посмотреть, там много уроков довольно подробно объясняются принципы ООП. У вас видимо зацикливание, у мну у самого такое по первости было. Вернитесь к проблеме через пару тройку дней, само собой все на место станет. Как вам тут сказали смеяться будете.
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
21.01.2018, 14:24  [ТС]
iSmokeJC
В предложении «Вызываем метод объекта ob1 и передаем ему аргумент...» ты не зря написал «метод объекта». Из всего сообщения вот именно этого я не понимаю. Опиши пожалуйста этот момент поподробнее.

iSmokeJC, Alex_Fedor
До этой программы, мне всегда казалось, что в записях типа ob1.sameBlock(ob3) , ob1 это просто «провайдер», который отправляет «клиента»(аргумент) наверх. мне всегда казалось, что этот «провайдер» только отправляет что-то тому или иному метода. но сейчас я понимаю, что он также и влияет на этот метод. но вот как, не пойму.
Если говорить простыми категориями, то получается:
Есть начальник по имени main, у него есть два сотрудника iSmokeJC и Alex_Fedor
Main говорит им, сходите к парню Block, назовите свои цифры и принесите мне корзинки с этими цифрами на табличках.
iSmokeJC, Alex_Fedor пошли к Block'u и называют каждый свои цифры. Тот дает каждому по корзинке, в которых таблички со своими цифрами, и говорит: "запомните, что эти корзинки занимают пространство вокруг вас и всегда будут с вами."
Вы оба киваете и возвращаетесь к начальнику main. Тот смотрит на вас и говорит: "Alex_Fedor, отведи iSmokeJC к парню, по имени sameBlock, да корзинки свои не забудьте."
И вот вы оба приходите к sameBlock, а Alex_Fedor говорит sameBlock'у: "Вот парня к тебе привел".
SameBlock знает, что должен работать с тем, кого привели а именно с ob3, т.к. в должностной инструкции у него написано: ob1.sameBlock(ob3). И в данном случае ob1 это Alex_Fedor, а ob3 - iSmokeJC. После он берет корзинку у iSmokeJC и называет те цифры, которые там написаны.
А теперь вопрос, откуда sameBlock знает, что в корзинке у Alex_Fedor, если по инструкции он работает с аргументом ob, который в данном случае является iSmokeJC? И если с «ob.a» он понимает, что нужно посмотреть к корзинку «iSmokeJC» и там найти «а», то откуда он понимает, что просто «а» в корзинке у «Alex_Fedor», а не у парня Block???
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2018, 14:52
В магазине iSmokeJC (ob1) купил (создали объект) пузырь водки(а) и колбасу краковскую(b), больше денег не хватило и у него появилось намерение (метод sameBlock) отобрать у кого-нибудь еще.
У aves (ob3) тоже есть намерение отобрать (метод sameBlock), а также пузырь коньяка(a) и сосиски(b).
Братва (main) сказала iSmokeJC - сходи, отними вон у того чувака еще чего-нибудь (передает в метод ob1.sameBlock параметр ob3). iSmokeJC отобрал у чувака (ob, а не ob3, т.к. iSmokeJC не знает, как его зовут) девайсы a и b. Потом он их сравнил - ништяк! У меня водка (а), а у него коньяк(ob.a == ob3.a), у меня колбаса(b), а у него сосиски(ob.b == ob3.b).
Потом говорит братве (System.out.println) - мое бухло не такое же как его (a != ob.a), у меня водка (a=), а у него коньяк (ob.a =).
0
Эксперт Java
3639 / 2971 / 918
Регистрация: 05.07.2013
Сообщений: 14,220
21.01.2018, 15:33
Есть память, в ней лежат объекты. У них есть адреса, по которым к ним можно обратиться.
Ты можешь написать что-то типа того:
copy(source, destination); source и destination - адреса двух объектов.
когда ты это говоришь, ты подразумеваешь, что надо сходить по адресу source, взять то, что там лежит, скопировать по адресу destination.
Подлежащее - source, сказуемое - copy
т.е. то же самое можно выразить вот так source.copy(destination);
source.copy(destination) и copy(source, destination) эквивалентны в некотором смысле.
0
42 / 42 / 5
Регистрация: 20.01.2015
Сообщений: 279
21.01.2018, 16:31
Цитата Сообщение от Aves Посмотреть сообщение
вот именно этого я не понимаю
Скажите, а такой код вам понятен.
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
public class Example {
 
    public static void main(String[] args) {
        A obA = new A(1, 2);
        B obB = new B(1, 2);
        System.out.println("объекты эквивалентны  " + obA.sameVolume(obB));
        obB.bb = 3;
        System.out.println("объекты эквивалентны  " + obB.sameVolume(obA));
    }
}
 
class A {
    int a;//переменные класса
    int b;
    public A(int i, int j) {//конструктор класса 
        a = i;
        b = j;
    }
 
    boolean sameVolume(B objB) {//сравнение переменных 
        if (objB.aa == a  &&  objB.bb == b) {
            return true;
        }
        return false;
    }
}
 
class B {
    int aa;
    int bb;
 
    public B(int ii, int jj) {
        aa = ii;
        bb = jj;
    }
 
    boolean sameVolume(A objA) {
        if (objA.a == aa && objA.b == bb) {
            return true;
        }
        return false;
    }
}
если все понятно то замените во всем коде aa на а, bb на b От этого ни логика, ни результат не поменяются.
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
21.01.2018, 21:07  [ТС]
Если я все правильно понимаю, то метод sameBlock (Block ob) одновременно может работать только с двумя объектами. это ob1 и ob3. (имеется ввиду, если передача аргумента произошла по записи ob1.sameBlock(ob3)).
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2018, 21:10
Aves, в конце то концов...
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
21.01.2018, 21:21  [ТС]
Если я все правильно понимаю, то метод sameBlock (Block ob) одновременно может работать только с двумя объектами. это ob1 и ob3. (имеется ввиду, если передача аргумента произошла по записи ob1.sameBlock(ob3)).
В принципе, я это понимал, но сейчас увидел это более ясно. Кстати, Alex_Fedor, респект тебе с твоим примером. Не знаю почему, но он мне немного прояснил суть.
Если бы была запись типа sameBlock(Block ox, oy), то передача была бы возможна и таким способом: ob1.sameBlock(ob2, ob3).
В этом случае метод sameBlock понимал бы уже три переменные: a, ox.a, oy,a. Первая это от объекта ob1, вторая от объекта ob2 и третья от объекта ob3. iSmokeJC, Вы мне тоже очень сильно помогли

Добавлено через 5 минут
Единственно чего я до сих пор не понимаю до конца, так это то, как организуется память для объектов. Я знаю, что для них выделяется место для хранения переменных. Но как физически происходит взаимодействие sameBlock и этих объектов.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2018, 21:26
Цитата Сообщение от Aves Посмотреть сообщение
Единственно чего я до сих пор не понимаю до конца, так это то, как организуется память для объектов. Я знаю, что для них выделяется место для хранения переменных. Но как физически происходит взаимодействие sameBlock и этих объектов.
Ты, конечн, извини, но вот сюда тебе точно лезть пока рановато...
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
21.01.2018, 21:30  [ТС]
iSmokeJC, мне Alex_Fedor посоветовал Хорстмана для изучения, хотя я уже прохожу Шилдта. Какая, по-твоему лучше и удобнее для начинающего?
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
21.01.2018, 21:35
Шилдт вроде попроще, Хорстман получше... хз. Читай обоих!

Добавлено через 2 минуты
Берешь тему, и у обоих ее изучаешь. Взгляд с двух сторон, кто-то что-то недоскажет, кто-то подробней, кто-то понятней...
0
21.01.2018, 23:06

Не по теме:

Aves, чувак, может просто не твое? Торговать не пробовал?

P.S. А может ты просто искусный тролль? Тут недавно один плюсовик пробегал...

0
42 / 42 / 5
Регистрация: 20.01.2015
Сообщений: 279
22.01.2018, 08:40
Цитата Сообщение от Aves Посмотреть сообщение
Если я все правильно понимаю, то метод sameBlock (Block ob) одновременно может работать только с двумя объектами. это ob1 и ob3.
Нет не правильно. Скажите вам такой код понятен? Его надо полностью понять. Имхо это самое элементарное от чего надо отолкнуться.
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
public class Example {
 
    public static void main(String[] args) {
        A obA=null;// здесь получаем указатель на объект класса, самого объекта еще не существует. инициализируем его null
        obA= new A();// создаем объект класса А. Теперь есть объект на который указывает obA.
                    //Т.е. где то в памяти есть объект, где он размещается и что из себя предствляет 
                    // пофигу. Нас интересуют поля этого объекта и его методы. Обращаться к ним можно через 
                    //указатель например так obA.i=10; или obA.sameVolume(5,6)
                    // если сделать так obA=null. То объект мы потеряем, т.е физически где то в памяти он будет
                    //существовать (пока не удалится системой) но доступа к нему уже не будет.
//      obA=null;//можете поигратся раскоментировать эту строку будет ошибка
        if(obA.sameVolume(5,6)){//сравниваются переменные, метод класса по сути используется как подпрограмма
                                // просто в Java нет понятий подпрограмма или функция, по крайней мере я такого понятия
                                // в описаниях нигде не встречал
            System.out.println("наборы переменных равны  ");
        }
        else {
            System.out.println("наборы переменных не равны  ");
        }
    }
}
 
class A {
    int i=5;//переменные класса 
    int j=6;
    
    boolean sameVolume(int x,int y) {//сравнение переменных, это метод класса (подпрограмма)
        if (x == i && y == j ) {
            return true;
        }
        return false;
    }
}
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
22.01.2018, 14:29  [ТС]
Alex_Fedor
Такой код мне абсолютно понятен. Метод класса А sameVolume принимает два целочисленных аргумента x, y, которые принимают то значение, которое мы указали в условии if (obA.sameVolume(5,6)). При этом sameVolume не может быть никакого другого типа, кроме как boolean, т.к. условие if ожидает логическое значение. (если конечно не возвращать 0 или 1). Далее метод сравниваем "приезжие" x , y с "местными" i, j. Если они равны, то метод возвращает true. если нет, то false.
И в зависимости от этого будет выполняться либо первое условие if, либо второе. Это элементарно.

Добавлено через 7 минут
Т.е. будет true
0
42 / 42 / 5
Регистрация: 20.01.2015
Сообщений: 279
22.01.2018, 17:43
Цитата Сообщение от Aves Посмотреть сообщение
Это элементарно.
Совершенно правильно.
Тогда такой код, он абсолютно равноценен первому. Дает те же самые результаты. Главное , что здесь надо понимать. Перемененные а и в метода main, переменные а и в - класса А, это абсолютно разные переменные которые живут параллельно каждая своей жизнью. Сточки this.a this.b означают, что это переменные а и в класса А, просто они скрываются своими тезками в этой строчке boolean sameVolume(int a,int b), и чтобы к ним обратиться нужно использовать this, Здесь вам все понятно?
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
public class Example {
 
    public static void main(String[] args) {
        A obA=null;
        obA= new A();
        int a=5;
        int b=7;
        if(obA.sameVolume(a,b)){                       
            System.out.println("наборы переменных равны  ");
        }
        else {
            System.out.println("наборы переменных не равны  ");
        }
    }
}
 
class A {
    int a=5;
    int b=6;
    
    boolean sameVolume(int a,int b) {
        if (this.a == a && this.b == b ) {
            return true;
        }
        return false;
    }
}
Добавлено через 7 минут
Цитата Сообщение от Alex_Fedor Посмотреть сообщение
Здесь вам все понятно?
Если все понятно, то следующий код абсолютно идентичен предыдущему. С той разницей, что первоначально а и в хранятся в классе В и чтобы получить к ним доступ нам нужен объект этого класса, который получаем в этой строчке B obB=new B(); По прежнему все а и в это абсолютно разные переменные существующие параллельно.
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
public class Example {
 
    public static void main(String[] args) {
        A obA=null;
        obA= new A();
        B obB=new B();
        int a=obB.a;
        int b=obB.b;
        if(obA.sameVolume(a,b)){                       
            System.out.println("наборы переменных равны  ");
        }
        else {
            System.out.println("наборы переменных не равны  ");
        }
    }
}
 
class A {
    int a=5;
    int b=6;
    
    boolean sameVolume(int a,int b) {
        if (this.a == a && this.b == b ) {
            return true;
        }
        return false;
    }
}
class B{
    int a=5;
    int b=7;
}
Добавлено через 10 минут
Цитата Сообщение от Alex_Fedor Посмотреть сообщение
Если все понятно
Если все понятно, то следующий код идентичен предыдущему с той разницей что из кода удалены лишние посредники. int a=obB.a; int b=obB.b; И теперь барабанная дробь, объекта класса В передается в метод объекта класса А, if(obA.sameVolume(obB))
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
public class Example {
 
    public static void main(String[] args) {
        A obA=null;
        obA= new A();
        B obB=new B();
        if(obA.sameVolume(obB)){                       
            System.out.println("наборы переменных равны  ");
        }
        else {
            System.out.println("наборы переменных не равны  ");
        }
    }
}
 
class A {
    int a=5;
    int b=6;
    
    boolean sameVolume(B objB) {
        if (this.a == objB.a && this.b == objB.b ) {
            return true;
        }
        return false;
    }
}
class B{
    int a=5;
    int b=7;
}
Добавлено через 11 минут
Цитата Сообщение от Alex_Fedor Посмотреть сообщение
Если все понятно
Если все понятно то просто оставим один класс А, здесь главное понимать, что хотя объекты obA и otherObA это объекты одного класса, но живут они каждый своей жизнью.
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
public class Example {
 
    public static void main(String[] args) {
        A obA=null;
        obA= new A();
        A otherObA=new A();
        otherObA.a=6;// это чтобы показать что переменные а и в объекта obA
        otherObA.b=7;// и переменные а и в объекта otherObA абсолютно разные и живут параллельно
        if(obA.sameVolume(otherObA)){                       
            System.out.println("наборы переменных равны  ");
        }
        else {
            System.out.println("наборы переменных не равны  ");
        }
    }
}
 
class A {
    int a=5;
    int b=6;
    
    boolean sameVolume(A objA) {
        if (this.a == objA.a && this.b == objA.b ) {
            return true;
        }
        return false;
    }
}
1
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
22.01.2018, 22:01  [ТС]
Я полтора часа рассматривал ваши примеры и кое-что понял.
Из последнего примера 22 строка. В ней указывается объект objA, который нужен для того, чтобы работать с переменными того объекта, который придет на место 'А'. Тогда становится понятно, что запись 'objA.a' не может иметь другой формы записи, иначе интерпретатор тупо не поймет, к переменной какого объекта нужно обращаться (только если написать просто 'а', тогда интерпретатор сошлется на переменную текущего класса (obA.sameBlock(otherObA).
Таким образом, запись типа 'а' и 'this.a' эквивалентны. А запись objA.a всегда будет указывать на переменную объекта otherObA.
Я правильно понял?
Если да, то объясните в чем смысл ключевого слова this?

Добавлено через 1 минуту
Возможно, что я не совсем ясно изъяснился, но это от того, что сам еще не до конца понял, что я понял. Но что-то я понял.
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
22.01.2018, 22:23
Aves, ключевое слово this указывает на принадлежность объекту, внутри которого происходит обращение:

Java
1
2
3
4
5
int a;
...
private void test(int a){
this.a = a;
}
Переменной а присваивается значение аргумента а.
1
42 / 42 / 5
Регистрация: 20.01.2015
Сообщений: 279
22.01.2018, 22:39
который придет на место 'А' нет
boolean sameVolume(A objA) здесь А это указатель типа переменной, в данном случае переменная objA должна быть объектом класса А, у вас же не вызывает затруднение такое boolean sameVolume(int a,int b) что переменные а и b имеют тип int. Т.е. по сути вы можете насоздавать сколь угодно много объектов класса A и спокойно передавать их в метод. Если вы попытаетесь передать в метод любую другую переменную то получите ошибку. Все остальное вы поняли правильно. В последнем примере указывать this не обязательно, просто я оставил его для лучшего согласования с предыдущими примерами. Удалите this от этого ничего не поменяется.
0
0 / 0 / 0
Регистрация: 31.05.2015
Сообщений: 18
23.01.2018, 10:24  [ТС]
Alex_Fedor
Еще вопрос., при создании объектов, в памяти выделяется область для каждого из них, в которую записываются значения переменных и все методы класса. Поэтому, если рассматривать ваш пример, получается, что как только интерпретатор встречает запись
Java
1
2
A obA= new A();
        A otherObA=new A();
он в памяти выделяет две области, называет из obA и otherObA. В них он записывает класс А (т.е. в каждой из двух выделенных областей памяти есть класс А но с той лишь разницей, что значения переменных другие.
Таким образом когда выполнение программы доходит до строчки
Java
1
 (obA.sameVolume(otherObA)
интерпретатор обращается в область памяти, которая называется obA и уже работает там с необходимым ему методом sameBlock. Я правильно это понял? Т.е. сколько объектов мы создает, столько он и выделит памяти, в каждую из которых запишет класс, которому принадлежит этот объект?

Добавлено через 3 минуты
iSmokeJC
если изменить код
Java
1
2
3
4
5
int a;
...
private void test(int a){
this.a = a;
}
на такой
Java
1
2
3
4
5
int a;
...
public void test(int a){
this.a = 5;
}
то this.a будет в любом методе и классе равен 5?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
23.01.2018, 10:24

Метод как аргумент в цикле
Будет ли метод выполняться при каждой итерации цикла, или он один раз выполнится и сохранится в переменную? Пример кода: private string...

Передача объекта как аргумент в метод
Метод printClass() предназначен для того, чтобы выводить класс вызвавшего метод объекта и объекта, переданного как аргумент методу. В...

Как в аргумент функции передать указатель на метод класса?
Как в аргумент функции передать указатель на метод класса? Метод в классе у меня статический,все равно не получается(невозможно...

Напишите метод, который принимает массив как аргумент и возвращает N
Вам задан массив (который будет иметь длину не менее 3, но может быть очень большой), содержащий целые числа. Массив либо полностью состоит...

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


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

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#. Название изменил на ColorStep. Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
Запрет дублирования строк в табличной части
Maks 13.09.2026
Реализация из решения ниже выполнена на нетиповом справочнике "Нормы ТО" с табличной часть "Виды ТО", разработанного в КА2, со следующими реквизитами: - ВидТО (СправочникСсылка. ВидыТО); - ВидГСМ. . .
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр.
Jin X 06.09.2026
Скрипты Tampermonkey для CyberForum, ChatGPT, Claude и пр. Работая с форумом и нейросетями в браузере часто хочется что-то подкорректировать или добавить какого-то функционала. Ниже прикреплён. . .
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru