Cоздание массива объектов в цикле.

Тема в разделе "WASM.BEGINNERS", создана пользователем Luna, 3 ноя 2010.

  1. wsd

    wsd New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2007
    Сообщения:
    2.824
    Luna
    я тебе привёл самый эффективный метод, открой JavaDoc и посмотри подробности.
    это не я издеваюсь, а ты халтурить начала )
     
  2. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    wsd
    ахахахааа, я вседа честна и пытаюсь во всём разобраться)))поэтому на моём счету ни одного посещения раздела коммерции

    wsd- что это ещё за странная аббревиатура?)


    Так копировать из массива в массив путём присваивания "="?
    и ещё: я могу , имея массив а[k] , скопировать его содержимое в b[k+1]...а потом из b[k+1] переслать обратно всё в a??????
     
  3. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    ух ты, что я нашлаа..

    Стандартная библиотека Java обеспечивает static метод System.arraycopy( ), который может ускорить копирование массива по сравнению с использование цикла for для выполнения копирования в ручную. System.arraycopy( ) перегружена для обработки всех типов. Вот пример, который манипулирует массивами типа int:
    Код (Text):
    1. //: c09:CopyingArrays.java
    2. // Использование System.arraycopy()
    3. import com.bruceeckel.util.*;
    4. import java.util.*;
    5.  
    6. public class CopyingArrays {
    7.   public static void main(String[] args) {
    8.     int[] i = new int[25];
    9.     int[] j = new int[25];
    10.     Arrays.fill(i, 47);
    11.     Arrays.fill(j, 99);
    12.     Arrays2.print("i = ", i);
    13.     Arrays2.print("j = ", j);
    14.     System.arraycopy(i, 0, j, 0, i.length);
    15.     Arrays2.print("j = ", j);
    16.     int[] k = new int[10];
    17.     Arrays.fill(k, 103);
    18.     System.arraycopy(i, 0, k, 0, k.length);
    19.     Arrays2.print("k = ", k);
    20.     Arrays.fill(k, 103);
    21.     System.arraycopy(k, 0, i, 0, k.length);
    22.     Arrays2.print("i = ", i);
    23.     // Объекты:
    24.     Integer[] u = new Integer[10];
    25.     Integer[] v = new Integer[5];
    26.     Arrays.fill(u, new Integer(47));
    27.     Arrays.fill(v, new Integer(99));
    28.     Arrays2.print("u = ", u);
    29.     Arrays2.print("v = ", v);
    30.     System.arraycopy(v, 0,
    31.       u, u.length/2, v.length);
    32.     Arrays2.print("u = ", u);
    33.   }
    34. } ///:~
    но это всё-равно не помогло
     
  4. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    http://vitya.biz/programms/java/Chapter09.html-
    вроде неплохой сайт, но тоже как-то не очень
     
  5. wsd

    wsd New Member

    Публикаций:
    0
    Регистрация:
    8 авг 2007
    Сообщения:
    2.824
    Luna
    конечно ты не сможеш обратно переслать больший массив в меньший.
    тебе нужны динамически расширяемые контейнерные классы.
    типа так
    Код (Text):
    1. for(int i = "начало в получателе", int j = "начало в источнике", int length="666"; length > 0; i++, j++, length-- ){
    2.             dest[i] = src[j];
    3.         }
    что бы это узнать надо хорошо выучитmся)
     
  6. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    wsd
    ну ты прямо человек загадка)))интересно, многие ли так хорошо выучились, что знают..
    но, безусловно, я догадывалась , что wsd- некое явление из программирования XD

    Ладно, спасибо тебе большое wsd)..я тебя сильно потрепала))

    Ты слишком умный для того, чтобы я что-нибудь поняла)))мы в курсе не будем углубляться до контейнеров, поэтому мне всё надо выполнить на простейшем уровне )))
    А я ещё раз для себя решила, что легче повеситься, чем найти в интернете что-нибудь себе подходящее =)
     
  7. not1

    not1 Member

    Публикаций:
    0
    Регистрация:
    6 окт 2009
    Сообщения:
    137
    если целый тип то пример
    c=a[k];
    a[k]=b[k+1];
    b[k+1]=c;
    еcли string или char*
    строки нельзя присваивать как в предыдущем примере, поэтому по аналогии тока вам понадобиться функция копирования строк...
     
  8. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.561
    Адрес:
    Russia
    Luna
    Вы просто ленивый человек. Столько потратили времени и уже давно бы решили вашу проблему. Хотя бы методом тыка, пробоя различные варианты. А вы только стонете, что ничего в инете нету, книги тупые, а как вам говорят ответ вы сразу "Да я так и знала". Смешно.
    Может вам подсказать где лучше всего стонать? На форуме это бесполезно.
    У вас с логикой все хорошо?
    Представим вам не нужны контейнеры, и представим что массивы не расширяемые. Допустим k = 3. Считаем от 0. Тогда в массиве "а" будет 3 элемента. В массиве "b", 4 элемента.
    b[0] = a[0];
    b[1] = a[1];
    b[2] = a[2];
    b[3] = ???;

    И так. Вопрос на засыпку. Что вы собираетесь помещать в четвертый элемент массива "b", если массив "а" уже исчерпался?
     
  9. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Luna
    Меня вот очень удивляет терпение модераторов, на мой взгляд всем вашим вопросам место тут, но может вы попытаетесь еще раз объяснить почему, если вы считаете что вам программирование не нужно, вы не переведётесь в другое учебное заведение, где его изучать не требуется?
     
  10. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.561
    Адрес:
    Russia
    Black_mirror
    Да .. мы очень терпеливы порой. Но оно когда нибудь закончится.
     
  11. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Luna
    Да, шли бы Вы на гуманитарный. Каждому своё.
     
  12. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    not1
    Спасииба)))

    TermoSINteZ
    нееет, вы сильно искажаете действительность..
    я про книги так не отзывалась, просто говорила, что в них не было подходящего.
    Вы, несомненно, с точки зрения программирования очень грамотные ,и вам с вашей высоты всё кажется простым и лёгким) и вместо того порой, чтобы просто ответить на вопрос, вы направляете читать книги или задаёте один и тот же вопрос "а нелегче ли перейти на другую специальность?" Человек же не может всегда заниматься тем, что ему нравится. Он должен заниматься тем, что от него требуестя. Я не говорю, что программирование просто обожаю, не могу жить без него, и что это дело всей моей жизни. Я просто говорю, что от меня требуется обучение программированию. И когда получается что-то изучить, освоить, тогда расгорается интерес двигаться дальше. Никогда нельзя бросать начатое.

    насчёт массива: можно ли в массиве было инициализировать лишь один элемент, а другие в него скопировать? Ответ на этот вопрос в книжке тяжеленько будет найти. Неужели всё надо изучать методом тыка?
     
  13. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    Прогресс у ТС есть, хотя-бы уже не создаёт тем с пространными названиями. Но вот читать книги я думаю она всё равно не будет, не нужно ей это.

    Для Вас и для нас так было-бы лучше.

    Верно, но также верно что надо иметь совесть и не трахать людям мозги.

    У вас на курсе нет парней? Нет знакомых мужеского пола? Познакомьтесь где-нибудь, хоть на сайте знакомств. Попросите помочь и уверен Вам помогут. Не нужно здесь устраивать чат.
     
  14. Booster

    Booster New Member

    Публикаций:
    0
    Регистрация:
    26 ноя 2004
    Сообщения:
    4.860
    И ещё добавлю, лучше зарегистрируйтесь на более подходящем форуме, там Вам окажут более качественную помощь или быстро забанят. ^)
     
  15. TermoSINteZ

    TermoSINteZ Синоби даоса Команда форума

    Публикаций:
    2
    Регистрация:
    11 июн 2004
    Сообщения:
    3.561
    Адрес:
    Russia
    Luna
    Вот вы и ответили на свой вопрос. От вас, а не от нас.
    И кстати, на счет массива вы меня так и не поняли. Или проигнорировали. Это все объясняет. Вы не вдумываетесь в то, что вам говорят люди.
     
  16. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    TermoSINteZ
    не судите так строго )))
    то, что вы сказали про массив, я поняла )))
    вы очень предсказуемый ;)
     
  17. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Luna
    Если вам не нравится программирование, то зачем этим вообще заниматься? А своим фальшивым дипломом(не подкреплённым соответствующими знаниями) вы только будете мешать нормальному специалисту встретить нормального заказчика. Найдите хоть одну область деятельности которая вам нравится и займитесь делом. Это будет лучше и для вас и для всего человечества в целом.
     
  18. Luna

    Luna New Member

    Публикаций:
    0
    Регистрация:
    7 ноя 2009
    Сообщения:
    288
    Black_mirror
    Мне в мире нравится абсолютно всё =)
    Я просто говорила, что не делаю уклон в сторону какой-либо области, в том числе и программирования )
    и вообще трудности встречаются в любом деле, и никуда от них не деться.
    ...и почему бы не спросить у знающих людей маленький вопрос. который тебя интересует..?)
     
  19. Black_mirror

    Black_mirror Active Member

    Публикаций:
    0
    Регистрация:
    14 окт 2002
    Сообщения:
    1.035
    Luna
    Как сказал один врач:
    Эти строчки случайно не про вас?
     
  20. max7C4

    max7C4 New Member

    Публикаций:
    0
    Регистрация:
    17 мар 2008
    Сообщения:
    1.203
    Luna
    такого уровня вопросы - что их стыдно должно быть задавать знающим людям.