Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / Java [игнор отключен] [закрыт для гостей] / двумерный динамический массив / 19 сообщений из 19, страница 1 из 1
23.06.2005, 17:22
    #33131914
alexpogorelov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
облазил что нашел потратил день а ясности нет
нужно создать двумерный массив кол-во элементов заранее неизвестно
нашел инфу по arraylist и vector но только там одномерные массивы...
а можно ли сделать двумерный ?
поля int и string

особенно порадовал бы пример ;)))
спасибо
...
Рейтинг: 0 / 0
23.06.2005, 17:39
    #33131958
Naug
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
многмерный массив в яве это массив массивов - т.е. создаёте один массив, а для каждой "строчки" создаёте другой и вставляете его в первый.
...
Рейтинг: 0 / 0
23.06.2005, 17:42
    #33131968
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
example:
HashMap
принцип value, key
...
Рейтинг: 0 / 0
23.06.2005, 17:47
    #33131977
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
Код: plaintext
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.
 import  java.util.*;

 public   class  UseHashMap{
	 public   static   void  main(String[] args) {
				
		/* Use of HashMap
		 * Begin
		 */
		String aa= "INDIA";
		HashMap hashmap =  new  HashMap();
		
		//To add elements in the HashMap
		hashmap.put("one", new  Integer( 1 ));
		hashmap.put("two", null );
		hashmap.put("three","THREE");
		hashmap.put("four",aa);
		
		//To see the size and to check whether HashMap is empty or not
		System.out.println("The size of HashMap = "+hashmap.size());
		System.out.println("If hashmap empty = "+hashmap.isEmpty());
		
		System.out.println("The elements of HashMap are");
		Set set= hashmap.keySet();
		Iterator iter = set.iterator();
		 int  i= 1 ;
		 while (iter.hasNext()){
			System.out.println("   "+i+") "+hashmap.get(iter.next()));
			i++;
		}
		
		// Checks whether this key/value is present in the HashMap or not
		System.out.println("Contains this \"one\" Key  ="+hashmap.containsKey("one")); 
		System.out.println("Contains this \"five\" Key  ="+hashmap.containsKey("five")); 
		System.out.println("Contains this \"aa\" Value  ="+hashmap.containsValue(aa)); 
		System.out.println("Contains this \"new Integer(6)\" Value  ="+hashmap.containsValue( new  Integer( 6 )));

		//The value for the key specified
		System.out.println("The value for the \"three\" key  ="+hashmap.get("three"));
		
		//Remove the value for the sepcified key
		hashmap.remove("two");
		System.out.println("The size of HashMap has reduced by one");
		System.out.println("The size of HashMap  = "+hashmap.size());
		System.out.println("The values of HashMap are ="+hashmap.values());
		
		//Remove all the elements from the HashMap
		hashmap.clear();
		System.out.println("If hashmap empty = "+hashmap.isEmpty());

		/* End of HashMap*/
			
	}
}
najdeno tut kickjava.com
в примере ключ String, можно и int использовать
...
Рейтинг: 0 / 0
23.06.2005, 17:56
    #33132005
Steppenwulf
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
johannaв примере ключ String, можно и int использовать
int, не Int?
...
Рейтинг: 0 / 0
23.06.2005, 18:04
    #33132019
am_sasa
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
Steppenwulf
int, не Int? а это че за зверь? можа Ineger?
...
Рейтинг: 0 / 0
23.06.2005, 18:08
    #33132031
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
Integer
...
Рейтинг: 0 / 0
23.06.2005, 21:17
    #33132248
Dima Yermak
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
а что мешает int+"" ?


Posted via ActualForum NNTP Server 1.2
...
Рейтинг: 0 / 0
23.06.2005, 21:55
    #33132278
Partisan M
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
про двумерный массив и разницу между int и Int рассказывается в начале абсолютно любого учебника по Java. Бери и читай, не стоит надеяться, что тут тебе в двух словах изложат учебник и ты будешь знать Java.
...
Рейтинг: 0 / 0
23.06.2005, 22:57
    #33132324
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
Partisan M
про двумерный массив и разницу между int и Int рассказывается в начале абсолютно любого учебника по Java. Бери и читай, не стоит надеяться, что тут тебе в двух словах изложат учебник и ты будешь знать Java.

а что сразу к книжкам отсылать то? человек спрашивает, кто хочет тот отвечает, кто нет и не надо.
все когда-то учились, и вобще, кто не спрашивает, тот пожизненно дураком остается.
...
Рейтинг: 0 / 0
24.06.2005, 00:36
    #33132376
ежемуха
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
alexpogorelovнужно создать двумерный массив кол-во элементов заранее неизвестно
нашел инфу по arraylist и vector но только там одномерные массивы...не надо никакой map

вектор векторов сделайте делов-то. самый нормальный способ.
а когда надо будет выдать куда-нибудь, перелейте уже в обычный массив массивов (двумерный массив).
...
Рейтинг: 0 / 0
24.06.2005, 07:56
    #33132503
alexpogorelov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
ой а можно пример ...
я пока не настолько начал разбираться в ява ;(
...
Рейтинг: 0 / 0
24.06.2005, 10:42
    #33132779
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
авторне надо никакой map

вектор векторов сделайте делов-то. самый нормальный способ.
а когда надо будет выдать куда-нибудь, перелейте уже в обычный массив массивов (двумерный массив).

а зачем так изощряться, когда HashMap и быстрее и удобнее? Векторами, помнится лет n назад пользовались, когда ничего другого не было.
...
Рейтинг: 0 / 0
24.06.2005, 10:55
    #33132812
Naug
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
я когда мне нужно именно двухмерный массив использую хаш хашей - также как johanna указала, только в значение кладу хаши.
...
Рейтинг: 0 / 0
24.06.2005, 11:44
    #33132954
двумерный динамический массив
Naugя когда мне нужно именно двухмерный массив использую хаш хашей - также как johanna указала, только в значение кладу хаши.

извините, но вы мутанты какие-то.

массив и хеш-таблица разные структуры данных, зачем одно использовать вместо другого?

Так и делаешь:

int[][] intArray;
intArray = new int[N][];
intArray[0] = new int[0];
intArray[1] = new int[1];
...
intArray[N-1] = new int[N-1];

Получишь треугольный "двухмерный" массив :)
int можешь смело заменить на String.
Можно сделать прямоугольный масив:

intArray = new int[N][M];

В java нет "динамических" массивов.
Если тебе нужна возможноть менять размер массива на лету (и именно это ты имел ввиду задавая свой вопрос), то подход тут следующий.
Либо создаёшь List of List (например, List a = new ArrayList(); a.add(new ArrayList()); и т.д.)
Либо создаёшь interface описывающий как ты будешь работать со своим "массивом", и реализуешь внтури тот алгоритм, который будет наиболее эффективнен для осуществления манипуляций, которые ты намереваешься проводить над своим творением.


2 PartizanM: про int и Int можно прочитать только в научной фантастике, т.к. Int - не существует.
...
Рейтинг: 0 / 0
24.06.2005, 11:53
    #33132980
ежемуха
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
джава апплетецВ java нет "динамических" массивов.
Если тебе нужна возможноть менять размер массива на лету (и именно это ты имел ввиду задавая свой вопрос),

если придираться к словам, то, поскольку, как вы правильно заметили, динамических массивов нет, то и на лету менять его размер возможности нет!

джава апплетецто подход тут следующий.
Либо создаёшь List of List (например, List a = new ArrayList(); a.add(new ArrayList()); и т.д.)

а я что говорил! я тоже самое и говорил. еще мутантом обзываетесь.

только это вы будете менять не размер массива, а размер вектора или ArrayList-а (что примерно одно и тоже).
...
Рейтинг: 0 / 0
24.06.2005, 11:56
    #33132995
johanna
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
не знаю, я так поняла вопрос автора: он искал двумерные массивы, оттого, что просто не знал как по-другому организовать структуру, которая бы держала пары values String, int.
Просто и быстро это сделать с помощью Map, и не надо никаких двумерных массивов, в данном случае они излишни.
Вполне возможно, что я неверно поняла проблему автора.
...
Рейтинг: 0 / 0
24.06.2005, 12:04
    #33133024
двумерный динамический массив
ежемухаесли придираться к словам, то, поскольку, как вы правильно заметили, динамических массивов нет, то и на лету менять его размер возможности нет!

Если будем придираться к словам, то сначала, нужно выяснить, что же на самом деле хотел автор, а потом обсуждать эффективность предложенных решений.

только это вы будете менять не размер массива, а размер вектора или ArrayList-а (что примерно одно и тоже).
А может ему удобнее будет использовать связку из линкедЛистов, зачем гадать прежде времени... ? ;)


2алл. Извините за мутантов, по горячился что-то :(
...
Рейтинг: 0 / 0
27.06.2005, 08:09
    #33135496
alexpogorelov
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
двумерный динамический массив
в принципе ответ я в теме нашел
поэтому наен мона закрыть
и всем огромное спасибо ;))

p.s. кстати пригодился как способ организации хэш так и аррэйлист ;)
...
Рейтинг: 0 / 0
Форумы / Java [игнор отключен] [закрыт для гостей] / двумерный динамический массив / 19 сообщений из 19, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]