Wpis z mikrobloga

java, chcę wprowadzać dane z konsoli do programu i umieszczać je w tablicy, jednak tych danych może być zarówno 5 albo nawet i 110, więc nie mogę deklarować rozmiaru tablicy na początku, tylko chciałbym coś w stylu nieskończonej coś jak inifnity array czy coś takiego

#naukaprogramowania
  • 15
Jak chcesz pobierać dane od użytkownika z konsoli to skorzystaj z Scannera. Możesz tutaj użyc pętli for albo while/do while. Przykładowo jak masz int[] to dopóki będziesz wprowadzał dane typu int pętla będzie cały czas działać, jak podasz dane typu string to ma ci wyjść z pętli. To tak na szybko
@d1l4x: albo robisz dwie tabele, za każdym wprowadzeniem danej robisz nową tabelę większą o 1 i kopiujesz do niej zawartość pierwszej (potem to samo robisz z pierwszą), albo enter nie przerywa wprowadzenia danych i zczytujesz potem całość po ilości linijek, albo wprowadzasz po ludzku za pomocą przecinków np. i sobie to tniesz na końcu
@d1l4x: W żadnym wypadku nie ArrayList. LinkedList
ArrayList alokuje obszar w pamięci, który będzie trzymał wartości. Jeśli go wypełnisz, następuje alokacja nowego obszaru i kopiowanie - operacje niewydajne i zbędne. Oczywiście w Twoim przypadku nie będzie to widoczne, bo i tak człowiek będzie zbyt wolny, żeby operacje obliczeniowe stanowiły główne obciążenie czasowe. Jednak jak będziesz wczytywał kiedyś setki tysięcy danych, będzie to bolesne.
LinkedList w implementacji wykorzystuje listę dwukierunkową i trzyma
@tptak: dziękuję Ci za odpowiedź, właśnie chyba to już koniec z zadawaniem pytań na wykopie, przenoszę się na stacka, 4programmers, niestety, bo to już kolejny raz ktoś mi trochę kiepsko podpowiada i są odpowiedzi w stylu

nie znam javy ale tu trzeba na bank zastosować pętle XD
@d1l4x: ziomek ogarnij sobie taki temat jak struktury danych, serio. To nie jest żaden przytyk tylko jeśli myślisz o zostaniu programistą to musisz doskonale wiedzieć i znać odpowiedź na pytanie czym jest program?

program to inaczej: struktury danych + algorytm (tzw. logika programu).

Musisz zapoznać się z pojęciem kolejki i przy tej okazji poczytaj jeszcze o stosie (stack), kopcu (heap), drzewie (tree), z algorytmów poczytaj o sortowaniach (np. quicksort),
@d1l4x: najważniejsza i tak jest praktyka. nie ma #!$%@? żeby pisać dobry kod nie poświęcając wcześniej co najmniej kilku tysięcy godzin nad aktywnym programowaniem (oczywiście przy założeniu że nie należysz np. do jakiegoś górnego ~0.5% społeczeństwa z niesamowitym ilorazem inteligencji).

możesz nawet być #!$%@? ale zgubisz się na tym jeśli nie masz za sobą grubych setek godzin praktyki, to jest coś przez co musi przejść każdy dobry programista. Każdy musi się
@-PPP-: Jeszcze dodałbym, że warto próbować programować w parze. Znajdź jakiś lokalny hakaton i próbuj współpracować z ludźmi. Kilka tysięcy godzin praktyki we własnym zakresie może dać Ci całkiem paskudne nawyki :)
Pytaj, pytaj, pytaj i jeszcze raz pytaj. Jak ktoś się niecierpliwi, znajdź innego jelenia i jego pytaj.