Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
S
SzkolenieALX_ProjektPatryka
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Patryk Czarnik
SzkolenieALX_ProjektPatryka
Commits
abe404bd
Commit
abe404bd
authored
Jun 13, 2023
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
a_list
parent
5265c34d
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
347 additions
and
0 deletions
+347
-0
DeklaracjeGeneryczne.java
src/p12_kolekcje/a_list/DeklaracjeGeneryczne.java
+37
-0
ListaLiczb.java
src/p12_kolekcje/a_list/ListaLiczb.java
+39
-0
Listy.java
src/p12_kolekcje/a_list/Listy.java
+88
-0
ListyAll.java
src/p12_kolekcje/a_list/ListyAll.java
+57
-0
NoweOperacjeList.java
src/p12_kolekcje/a_list/NoweOperacjeList.java
+53
-0
PorownanieSzybkosciList.java
src/p12_kolekcje/a_list/PorownanieSzybkosciList.java
+73
-0
No files found.
src/p12_kolekcje/a_list/DeklaracjeGeneryczne.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
DeklaracjeGeneryczne
{
public
static
void
main
(
String
[]
args
)
{
List
l1
=
new
ArrayList
();
ArrayList
l2
=
new
ArrayList
();
List
<
String
>
l3
=
new
ArrayList
<
String
>();
List
<
String
>
l4
=
new
ArrayList
<>();
// diamond operator od Javy 7
List
<
String
>
l5
=
new
ArrayList
();
List
l6
=
new
ArrayList
<>();
// lista Object-ów
//NK List<> l7 = new ArrayList<String>();
List
<
List
<
Integer
>>
l8
=
new
ArrayList
<>();
//NK List<List<Integer>> l9 = new ArrayList<<>>();
//NK List<List<Integer>> l10 = new ArrayList<List<>>();
List
<
List
<
Integer
>>
l11
=
new
ArrayList
<
List
<
Integer
>>();
//NK List<int> l12 = new ArrayList<>();
List
<
int
[]>
l13
=
new
ArrayList
<>();
// "lista nie wiadomo czego"
// w praktyce takiej listy mogę używać tylko do odczytu, nie mogę w niej niczego zapisać
List
<?>
l14
=
new
ArrayList
<>();
List
<?>
l15
=
new
ArrayList
<
String
>();
// l15.add("ala");
// to nie to samo, co lista Objectów, bo np lista Stringów nie jest tym samym co lista Objectów, i nie można wpisać
//NK List<Object> l16 = new ArrayList<String>();
}
}
src/p12_kolekcje/a_list/ListaLiczb.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
ListaLiczb
{
public
static
void
main
(
String
[]
args
)
{
//NK List<int> lista = new ArrayList<>();
List
<
Integer
>
lista
=
new
ArrayList
<>();
lista
.
add
(
5
);
lista
.
add
(
6
);
lista
.
add
(
7
);
lista
.
add
(
8
);
lista
.
add
(
9
);
lista
.
add
(
10
);
System
.
out
.
println
(
lista
);
System
.
out
.
println
(
"rozmiar: "
+
lista
.
size
());
// if(lista.remove(5)) {
// }
Integer
element
=
lista
.
remove
(
5
);
// wg indeksu
System
.
out
.
println
(
"Usunięty element: "
+
element
);
System
.
out
.
println
(
lista
);
Integer
x
=
9
;
if
(
lista
.
remove
(
x
))
{
// wg wartości
System
.
out
.
println
(
"usunąłem wartość 9"
);
}
boolean
b
=
lista
.
remove
((
Integer
)
5
);
// OK, wg wartości
// boolean b = lista.remove((Object)5); // wg wartości
System
.
out
.
println
(
"Czy usunięto? "
+
b
);
System
.
out
.
println
(
lista
);
}
}
src/p12_kolekcje/a_list/Listy.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.util.List
;
import
java.util.ArrayList
;
import
java.util.Arrays
;
import
java.util.Collections
;
public
class
Listy
{
public
static
void
main
(
String
[]
args
)
{
List
<
String
>
lista
=
new
ArrayList
<>();
System
.
out
.
println
(
lista
);
// dodaje na koniec
lista
.
add
(
"ola"
);
lista
.
add
(
"ala"
);
boolean
coSieStalo
=
lista
.
add
(
"ela"
);
System
.
out
.
println
(
coSieStalo
);
if
(
lista
.
add
(
"iza"
))
{
System
.
out
.
println
(
"Iza też"
);
}
System
.
out
.
println
(
lista
);
System
.
out
.
println
();
// odczyt z określonej pozycji, numeracja od 0 jak w tablicach
String
x
=
lista
.
get
(
0
);
// lista[0] - tak się nie da
System
.
out
.
println
(
x
);
x
=
lista
.
get
(
2
);
System
.
out
.
println
(
x
);
//EXN x = lista.get(lista.size());
// System.out.println(x);
// dodaje na okreslona pozycje, przesuwa dotychczasowe elementy w prawo
// tu może być od 0 do 4, ale już nie 5 (IOOBExn)
lista
.
add
(
2
,
"ewa"
);
lista
.
add
(
lista
.
size
(),
"ostatnia"
);
// OK
System
.
out
.
println
(
lista
);
// nadpisuje element na podanej pozycji nowym elementem
lista
.
set
(
2
,
"ula"
);
System
.
out
.
println
(
lista
);
System
.
out
.
println
();
lista
.
add
(
0
,
"ala"
);
System
.
out
.
println
(
lista
);
// usuwa z określonej pozycji, zwraca obiekt
String
wynik
=
lista
.
remove
(
3
);
System
.
out
.
println
(
"usunąłem element : "
+
wynik
);
System
.
out
.
println
(
lista
);
// to by usunęło od razu wszystkie wystąpienia elementu "ala"
// boolean b = lista.removeAll(Collections.singleton("ala"));
// to usuwa pierwsze wystąpienie, elementy są porównywane za pomocą equals, wynik boolean mówi czy element został usunięty
boolean
b
=
lista
.
remove
(
"ala"
);
System
.
out
.
println
(
"bool : "
+
b
);
System
.
out
.
println
(
lista
);
b
=
lista
.
remove
(
"ala"
);
System
.
out
.
println
(
"bool : "
+
b
);
System
.
out
.
println
(
lista
);
b
=
lista
.
remove
(
"ala"
);
System
.
out
.
println
(
"bool : "
+
b
);
System
.
out
.
println
(
lista
);
System
.
out
.
println
();
lista
.
addAll
(
Arrays
.
asList
(
"ola"
,
"ela"
,
"ewa"
,
"kasia"
,
"marysia"
,
"aga"
));
System
.
out
.
println
(
lista
);
System
.
out
.
println
(
"indexOf: "
+
lista
.
indexOf
(
"ewa"
));
System
.
out
.
println
(
"contains: "
+
lista
.
contains
(
"ewa"
));
System
.
out
.
println
();
System
.
out
.
println
(
"indexOf: "
+
lista
.
indexOf
(
"Ewa"
));
// -1
System
.
out
.
println
(
"contains: "
+
lista
.
contains
(
"Ewa"
));
// false
System
.
out
.
println
();
Collections
.
sort
(
lista
);
System
.
out
.
println
(
lista
);
for
(
String
s
:
lista
)
{
System
.
out
.
println
(
"Kolejny element: "
+
s
);
}
}
}
src/p12_kolekcje/a_list/ListyAll.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.util.ArrayList
;
import
java.util.List
;
public
class
ListyAll
{
public
static
void
main
(
String
[]
args
)
{
List
<
String
>
a
=
new
ArrayList
<>();
a
.
add
(
"Ala"
);
a
.
add
(
"Ola"
);
a
.
add
(
"Ela"
);
a
.
add
(
"Ula"
);
System
.
out
.
println
(
"a = "
+
a
);
List
<
String
>
b
=
new
ArrayList
<>(
a
);
System
.
out
.
println
(
"a = "
+
b
);
List
<
String
>
c
=
new
ArrayList
<>();
c
.
add
(
"Ala"
);
c
.
add
(
"Ula"
);
System
.
out
.
println
(
"c = "
+
c
);
List
<
String
>
d
=
new
ArrayList
<>();
d
.
add
(
"Ala"
);
d
.
add
(
"Gosia"
);
System
.
out
.
println
(
"d = "
+
d
);
d
.
addAll
(
a
);
System
.
out
.
println
(
"d = "
+
d
);
System
.
out
.
println
(
a
.
containsAll
(
c
));
// T
System
.
out
.
println
(
c
.
containsAll
(
a
));
// F
c
.
add
(
"Basia"
);
// nie ma w a
System
.
out
.
println
(
"c = "
+
c
);
boolean
czy
=
a
.
removeAll
(
c
);
System
.
out
.
println
(
czy
);
// T
System
.
out
.
println
(
"a = "
+
a
);
// usunął Ala i Ula, a nie przejął się Basią
System
.
out
.
println
();
a
.
add
(
"Genowefa"
);
a
.
add
(
"Hermenegilda"
);
a
.
add
(
"Genowefa"
);
System
.
out
.
println
(
"a = "
+
a
);
System
.
out
.
println
(
"b = "
+
b
);
// zostawia w liście a tylko te elementy, które wystepują w b
czy
=
a
.
retainAll
(
b
);
System
.
out
.
println
(
"retainAll "
+
b
);
System
.
out
.
println
(
"a = "
+
a
);
System
.
out
.
println
(
"b = "
+
b
);
}
}
src/p12_kolekcje/a_list/NoweOperacjeList.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.text.Collator
;
import
java.util.ArrayList
;
import
java.util.Comparator
;
import
java.util.List
;
import
java.util.Locale
;
public
class
NoweOperacjeList
{
public
static
void
main
(
String
[]
args
)
{
ArrayList
<
String
>
lista
=
new
ArrayList
<>();
lista
.
add
(
"Ala"
);
lista
.
add
(
"Ola"
);
lista
.
add
(
"Kasia"
);
lista
.
add
(
"Ela"
);
lista
.
add
(
"Łucja"
);
lista
.
add
(
"Ula"
);
lista
.
add
(
"Asia"
);
lista
.
add
(
"Zosia"
);
System
.
out
.
println
(
lista
);
System
.
out
.
println
();
lista
.
sort
(
null
);
// lista.sort(Comparator.reverseOrder());
lista
.
sort
(
Collator
.
getInstance
());
// lista.sort(Collator.getInstance(Locale.CHINA));
// lista.sort(Collator.getInstance().reversed());
System
.
out
.
println
(
lista
);
System
.
out
.
println
();
lista
.
forEach
(
s
->
System
.
out
.
print
(
s
+
", "
));
System
.
out
.
println
();
System
.
out
.
println
();
List
<
String
>
lista1
=
(
List
<
String
>)
lista
.
clone
();
System
.
out
.
println
(
lista1
);
// predykat; operacja usuwa z listy wszystkie spełaniające warunek
lista1
.
removeIf
(
s
->
s
.
length
()
<=
3
);
System
.
out
.
println
(
lista1
);
System
.
out
.
println
();
List
<
String
>
lista2
=
(
List
<
String
>)
lista
.
clone
();
System
.
out
.
println
(
lista2
);
lista2
.
replaceAll
(
s
->
s
.
toUpperCase
());
// lambda expression
// lista2.replaceAll(String::toUpperCase); // method reference - w tym przypadku równoważnie
System
.
out
.
println
(
lista2
);
System
.
out
.
println
();
}
}
src/p12_kolekcje/a_list/PorownanieSzybkosciList.java
0 → 100644
View file @
abe404bd
package
p12_kolekcje
.
a_list
;
import
java.util.ArrayList
;
import
java.util.LinkedList
;
import
java.util.List
;
public
class
PorownanieSzybkosciList
{
public
static
void
testujListe
(
List
<
Integer
>
lista
)
{
long
start
,
koniec
;
int
suma
;
System
.
out
.
print
(
"Wstawianie 250 tys. na koniec listy (add)... "
);
start
=
System
.
currentTimeMillis
();
for
(
int
i
=
0
;
i
<
250000
;
i
++)
{
lista
.
add
(
i
);
}
koniec
=
System
.
currentTimeMillis
();
System
.
out
.
println
(
koniec
-
start
+
" ms"
);
lista
.
clear
();
// usuwa całą zawartość
System
.
out
.
print
(
"Wstawianie 500 tys. na koniec listy (add)... "
);
start
=
System
.
currentTimeMillis
();
for
(
int
i
=
0
;
i
<
500000
;
i
++)
{
lista
.
add
(
i
);
}
koniec
=
System
.
currentTimeMillis
();
System
.
out
.
println
(
koniec
-
start
+
" ms"
);
System
.
out
.
println
(
"\nDodawanie na początek... "
);
start
=
System
.
currentTimeMillis
();
Integer
liczba
=
333
;
// 333 jest elementem (wartością) a nie indeksem
for
(
int
i
=
0
;
i
<
10000
;
i
++)
{
lista
.
add
(
0
,
liczba
);
// Szybko dla LinkedList, wolno dla ArrayList
}
koniec
=
System
.
currentTimeMillis
();
System
.
out
.
println
(
koniec
-
start
+
" ms"
);
System
.
out
.
println
(
"\nWybieranie po indeksie... "
);
start
=
System
.
currentTimeMillis
();
suma
=
0
;
for
(
int
i
=
0
;
i
<
5000
;
i
++)
{
suma
+=
lista
.
get
(
i
*
100
);
// Szybkie dla ArrayList, wolne dla LinkedList
}
koniec
=
System
.
currentTimeMillis
();
System
.
out
.
println
(
koniec
-
start
+
" ms"
);
System
.
out
.
println
(
"wynik="
+
suma
);
System
.
out
.
println
(
"\nOdczytanie wszystkich elementów foreach"
);
start
=
System
.
currentTimeMillis
();
suma
=
0
;
for
(
int
x
:
lista
)
{
suma
+=
x
;
}
koniec
=
System
.
currentTimeMillis
();
System
.
out
.
println
(
koniec
-
start
+
" ms"
);
System
.
out
.
println
(
"wynik="
+
suma
);
}
public
static
void
main
(
String
[]
args
)
{
List
<
Integer
>
linked
=
new
LinkedList
<>();
List
<
Integer
>
tablicowa
=
new
ArrayList
<>();
System
.
out
.
println
(
"LinkedList:"
);
testujListe
(
linked
);
System
.
out
.
println
(
"\n\n================"
);
System
.
out
.
println
(
"ArrayList:"
);
testujListe
(
tablicowa
);
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment