BG Development


Страници: (2) [1] 2   ( Първото ново мнение ) Reply to this topicStart new topicStart Poll

> "Структура от структури"
ivan_g_popov
Публикувано на: 22-08-2018, 08:47
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 28
Регистриран на: 16.02.18



Здравейте искам да попитам първо възможно ли е да се направи примерно ArrayList който да съдържа масив или др. лист? Ако да то как става дефинирането ?
CODE

ArrayList<string[3]>myArrayList=new ArrayList<string[3]>;

string[] note= {"Do", "Re","Mi"};
string[] note2 {"Fa","Sol","La"};


myArrayList.addAll(note);
myArrayList.addAll(note2);


Това дефиниране вярно ли е и валидно ли е и за др. структури?
Ако е възможно може ли и да ме ориентирате как да го добавя( при мен се получава трост ArrayList( а не тип матрица))?
PMEmail Poster
Top
ifnull
Публикувано на: 22-08-2018, 08:55
Quote Post



Име: Димитър
Група: Потребител
Ранг: Редовен член

Мнения: 517
Регистриран на: 10.07.09



такова ли two dimensional array
PMEmail Poster
Top
ivan_g_popov
Публикувано на: 22-08-2018, 09:00
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 28
Регистриран на: 16.02.18



Като идея да, но знаем разликата между масив и лист(по-гъвкаво е ).Като в различна ситуация може да "колекционирам" лист от листове,от стекове , от масив ......

Давам примерна ситуация. Ще получавам до команда стоп по 3 ноти искам да си пазя трите ноти в лист на позиция 1 следващата тройка на позиция 2 и ... .А за да стане по-забавно меже и да не е казано, че ще са три (тоест лист от листове-които са стринг)или пък, че подредбата и следващата обработка е важна ( лист от стекове).

Това мнение е било редактирано от ivan_g_popov на 22-08-2018, 09:12
PMEmail Poster
Top
ifnull
Публикувано на: 22-08-2018, 09:29
Quote Post



Име: Димитър
Група: Потребител
Ранг: Редовен член

Мнения: 517
Регистриран на: 10.07.09



CODE

List<List<Integer>> notes= new ArrayList<List<Integer>>();

   notes.add(Arrays.asList(1,2,3));
   notes.add(Arrays.asList(4,5,6,7));


преди да почваш да кодиш прочети кое какво е и кога се използва
PMEmail Poster
Top
ivan_g_popov
Публикувано на: 22-08-2018, 10:24
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 28
Регистриран на: 16.02.18



Предварително се извинявам на тези които може да се засегнат.
Да седна да чета, че листа е масив,който не е необходимо да се задава предварително дължината(която дефолтно е 4 и при подаден елемент над дължината той се самоудвоява), и че е удобен вариант за "тъпчене" ма данни в while цикъл.Или да съдя по примера ти и да приема, че може да се работи само с инт(при положение, че давам примери със стринг).Питам доста конкретно дали в диамантените скоби на една структура мога да дефинирам друга?И как да прибавя масив(който съм прочел предварително, и си има име)в ArrayList (а не да задавам стоиностите в notes.add(Arrays.asList(1,2,3)); )?Има ли генерално правило което да се прилага?

Примерно в С++ вектора, който е еквивалент на листа(в джава) в синтаксиса на дефинирането му показвам каква структура ще съдържа и мога да натъпча всичко с push_back(било то елемент или структура).

Как ства това в Java?

Пак се извинявам, че нивото ми е ниско за форума, но човек се учи...
PMEmail Poster
Top
ifnull
Публикувано на: 22-08-2018, 10:35
Quote Post



Име: Димитър
Група: Потребител
Ранг: Редовен член

Мнения: 517
Регистриран на: 10.07.09



правиш ли разлика между int и Integer ?
PMEmail Poster
Top
ivan_g_popov
Публикувано на: 22-08-2018, 10:48
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 28
Регистриран на: 16.02.18



int е примитивна променлива за число (цяло).
Integer е обект .
Разликата е, че на Integer i мога да кажа .toString, на int i немога.(е разбирасе има и др) но сега ако ми кажеш че Integer i = "Do"; е валидно ...

Това мнение е било редактирано от ivan_g_popov на 22-08-2018, 10:49
PMEmail Poster
Top
ifnull
Публикувано на: 22-08-2018, 10:59
Quote Post



Име: Димитър
Група: Потребител
Ранг: Редовен член

Мнения: 517
Регистриран на: 10.07.09



Integer и String ти са Object така че за примера е без значение с кое от двете пълниш ArrayList, той работи само с Object
PMEmail Poster
Top
ivan_g_popov
Публикувано на: 22-08-2018, 12:00
Quote Post



Име:
Група: Потребител
Ранг: Новопостъпил

Мнения: 28
Регистриран на: 16.02.18



Ок а как да заменя (Arrays.asList(1,2,3)) в:
CODE
notes.add(Arrays.asList(1,2,3));

с името на структурата която искам да запиша в листа(която е вече инициализирана)?
Да подкарам такъв тип запис:
CODE

string[] note= {"Do", "Re","Mi"};
string[] note2 {"Fa","Sol","La"};


myArrayList.add(note);
myArrayList.add(note2);


Този запис верен ли е (ако не може ли да го поправш)?
CODE

ArrayList<string[3]>myArrayList=new ArrayList<string[3]>();
PMEmail Poster
Top
ifnull
Публикувано на: 22-08-2018, 13:14
Quote Post



Име: Димитър
Група: Потребител
Ранг: Редовен член

Мнения: 517
Регистриран на: 10.07.09



примерно така

CODE
ArrayList<String[]> myStrings = new ArrayList<String[]>();

  String[] myString1= {"Do", "Re","Mi"};  
      myStrings .add(myString1);
      String[] myString2= {"Fa","Sol","La"};
      myStrings .add(myString2);

  for(int i=0;i<myStrings.size();i++){

  String[] myString= new String[3];
  myString=myStrings.get(i);
  for(int j=0;j<myString.length;j++){
     System.out.print(myString[j] + " ");
  }
  System.out.print("\n");

}
PMEmail Poster
Top
1 потребители преглеждат тази тема в момента (1 гости, 0 анонимни потребители)
Потребители, преглеждащи темата в момента:

Topic Options Страници: (2) [1] 2  Reply to this topicStart new topicStart Poll

 


Copyright © 2003-2018 | BG Development | All Rights Reserved
RSS 2.0