Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
J
java_examples
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
java_examples
Commits
4d33c128
Commit
4d33c128
authored
Nov 08, 2022
by
Patryk Czarnik
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Przykłady nt instrukcji (if, switch, pętle)
parent
43557458
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
804 additions
and
0 deletions
+804
-0
A_TeoriaIf.java
...aSE/src/main/java/pcz/p03_instrukcje/a_if/A_TeoriaIf.java
+104
-0
A_RodzajePetli.java
.../main/java/pcz/p03_instrukcje/b_petle/A_RodzajePetli.java
+154
-0
BreakContinue_Prezentacja.java
...pcz/p03_instrukcje/b_petle/BreakContinue_Prezentacja.java
+32
-0
DziwnyWhile.java
...src/main/java/pcz/p03_instrukcje/b_petle/DziwnyWhile.java
+19
-0
Label.java
...avaSE/src/main/java/pcz/p03_instrukcje/b_petle/Label.java
+15
-0
MartwyKod.java
...E/src/main/java/pcz/p03_instrukcje/b_petle/MartwyKod.java
+41
-0
PetlaNieskonczona.java
...in/java/pcz/p03_instrukcje/b_petle/PetlaNieskonczona.java
+18
-0
Przerwania.java
.../src/main/java/pcz/p03_instrukcje/b_petle/Przerwania.java
+76
-0
Switch1.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch1.java
+34
-0
Switch2.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch2.java
+41
-0
Switch3.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch3.java
+45
-0
Switch4.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch4.java
+42
-0
Switch5.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch5.java
+51
-0
Switch6.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch6.java
+59
-0
Switch8.java
...SE/src/main/java/pcz/p03_instrukcje/c_switch/Switch8.java
+26
-0
SwitchNull_Pusty.java
...in/java/pcz/p03_instrukcje/c_switch/SwitchNull_Pusty.java
+18
-0
SwitchString_Interaktywnie.java
...z/p03_instrukcje/c_switch/SwitchString_Interaktywnie.java
+29
-0
No files found.
P01-JavaSE/src/main/java/pcz/p03_instrukcje/a_if/A_TeoriaIf.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
a_if
;
import
java.util.Random
;
public
class
A_TeoriaIf
{
public
static
void
main
(
String
[]
args
)
{
Random
random
=
new
Random
();
int
x
=
random
.
nextInt
(
100
);
// liczba od 0 do 99 włącznie
int
y
=
random
.
nextInt
(
100
);
System
.
out
.
println
(
"Wylosowane liczby:"
);
System
.
out
.
printf
(
"x = %d , y = %d\n"
,
x
,
y
);
// Wzorcowa wersja if:
// if(WARUNEK) { INSTRUKCJE1 } else { INSTRUKCJE2 }
// Gdy WARUNEK jest prawdą, wykonają się INSTRUKCJE1, a jeśli nieprawdą to INSTRUKCJE2
if
(
x
%
2
==
0
)
{
System
.
out
.
println
(
"x jest parzysty"
);
System
.
out
.
println
(
"Ala ma kota"
);
}
else
{
System
.
out
.
println
(
"x jest nieparzysty"
);
System
.
out
.
println
(
"Ola ma psa"
);
}
System
.
out
.
println
(
"a kuku"
);
System
.
out
.
println
();
// Jeśli za ifem lub elsem do wykonania jest tylko jedna instrukcja, to można pominąć nawiasy klamrowe.
if
(
x
>=
50
)
System
.
out
.
println
(
">= 50"
);
else
System
.
out
.
println
(
"< 50"
);
// Używajmy tego jednak z umiarem, tylko w bardzo prostych przypadkach, np. break, throw, return...
// W większości przypadków zalecane jest wzięcie wykonywanego kodu w {nawiasy klamrowe},
// gdyż łatwiej dokonać późniejszych zmian, np. dodać kolejną linię itp...
/* Za instrukcją strukturalną (if, while, for...) w praktyce nigdy nie stawia się średnika
if(x == y); {
System.out.println("Obie liczby są równe!");
}
Powyższy kod zawsze wyświetliłby podany napis, bo struktiura jest taka:
"jeśli x == y, nie rób nic; a później ZAWSZE wypisuj ten tekst"
*/
// Można użyć samego if, bez else:
if
(
x
+
y
>=
100
)
{
System
.
out
.
println
(
"suma x i y jest trzycyfrowa"
);
}
// ify (i inne instrukcje blokowe) można zagnieżdżać. Tutaj tym bardziej zalecamy pisanie nawiasów {}
if
(
x
%
2
==
0
)
{
if
(
y
%
2
==
0
)
{
System
.
out
.
println
(
"obie liczby są parzyste"
);
}
else
{
System
.
out
.
println
(
"x parzysty, y nieparzysty"
);
}
}
else
{
if
(
y
%
2
==
0
)
{
System
.
out
.
println
(
"x nieparzysty, y parzysty"
);
}
else
{
System
.
out
.
println
(
"obie liczby nieparzyste"
);
}
}
System
.
out
.
println
();
// Jeśli rozpatrywanych sytuacji jest więcej niż 2, to typowym sposobem zapisu jest ciąg
// if - else if - ... - else
if
(
x
>
y
)
{
System
.
out
.
println
(
"x > y"
);
}
else
if
(
x
<
y
)
{
System
.
out
.
println
(
"x < y"
);
}
else
{
System
.
out
.
println
(
"x = y"
);
}
// W Javie nie ma automatycznej konwersji liczb (ani innych rzeczy) na boolean
// if(liczba) {
// System.out.println("Nie zero");
// }
//
// if(liczba = 0) {
// System.out.println("Nie zero");
// }
// Warunkiem najczęściej jest porównanie, ale może też być wywołanie metody typu boolean
String
str
=
"Ala ma kota"
;
if
(
str
.
isEmpty
())
{
System
.
out
.
println
(
"puste"
);
}
// może też być bezpośrednie użycie zmiennej typu boolean
boolean
logika
=
x
>
10
&&
y
%
3
==
0
;
if
(
logika
)
{
System
.
out
.
println
(
"Dziwny warunek jest prawdą"
);
}
else
{
System
.
out
.
println
(
"Nieprawda"
);
}
System
.
out
.
println
(
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/A_RodzajePetli.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
public
class
A_RodzajePetli
{
public
static
void
petlaWhile
()
{
int
i
=
1
;
while
(
i
<=
5
)
{
System
.
out
.
println
(
"w pętli: "
+
i
);
i
++;
}
System
.
out
.
println
(
"za pętlą: "
+
i
);
}
public
static
void
doWhile
()
{
int
i
=
1
;
do
{
System
.
out
.
println
(
"w pętli: "
+
i
);
i
++;
}
while
(
i
<=
5
);
System
.
out
.
println
(
"za pętlą: "
+
i
);
}
// ominięte w main
public
static
void
petlaFor
()
{
for
(
int
i
=
1
;
i
<=
5
;
i
++)
{
System
.
out
.
println
(
"w pętli "
+
i
);
}
// NK System.out.println("za pętlą: " + i);
int
i
;
// OK
}
public
static
void
petlaFor2
()
{
int
i
;
for
(
i
=
1
;
i
<=
5
;
i
++)
{
System
.
out
.
println
(
"w pętli "
+
i
);
}
System
.
out
.
println
(
"za pętlą: "
+
i
);
// 6
// NK int i;
}
// ominięte w main
public
static
void
petlaFor3
()
{
// int i;
for
(
int
i
=
1
,
j
=
10
;
i
<=
5
&&
j
<
3
;
i
++,
j
=
i
/
10
,
System
.
out
.
println
(
"z pętli "
+
j
))
{
System
.
out
.
println
(
"w pętli "
+
i
);
}
// System.out.println("za pętlą: " + i);
}
// ominięte w main
// w for moga byc dowolne instrukcje
public
static
void
petlaFor4
(
org
.
w3c
.
dom
.
Node
node
)
{
for
(
org
.
w3c
.
dom
.
Node
child
=
node
.
getFirstChild
();
child
!=
null
;
child
=
child
.
getNextSibling
())
{
System
.
out
.
println
(
child
.
getTextContent
());
}
}
public
static
void
losowanie
()
{
for
(;;)
{
double
x
=
Math
.
random
();
System
.
out
.
println
(
"Wylosowałem "
+
x
);
if
(
x
>
0.8
)
break
;
}
System
.
out
.
println
(
"za pętlą"
);
}
public
static
void
forEach
()
{
String
[]
imiona
=
{
"Ala"
,
"Ola"
,
"Ela"
,
"Ula"
};
// pozwala przeglądać zawartość tablicy, albo obiekty, które są Iterable
// tzw. "for-each" albo "enhanced for loop", od Javy 5
for
(
String
imie:
imiona
)
{
System
.
out
.
println
(
"Kolejna osoba to "
+
imie
);
}
// Od Javy 10 można tak:
// for(var imie : imiona) {
// System.out.println("Kolejna osoba to " + imie);
// }
}
public
static
void
forEachEgzamin
()
{
// typowa zmyłka z egzaminu
int
[]
t
=
{
1
,
2
,
3
};
for
(
int
i:
t
)
{
// i oznacza WARTOŚĆ z tablicy, a nie indeks
// więc tu dojdzie do wyjścia poza zakres tablicy
System
.
out
.
println
(
t
[
i
]);
}
}
public
static
void
przerwanie
()
{
for
(
int
i
=
1
;
i
<=
10
;
i
++)
{
System
.
out
.
println
(
"i = "
+
i
);
if
(
i
%
2
==
1
)
{
System
.
out
.
println
(
" nieparzysta, continue"
);
continue
;
}
System
.
out
.
println
(
" nie było continue"
);
if
(
i
%
3
==
0
)
{
System
.
out
.
println
(
" podzielna przed 3, break"
);
break
;
}
System
.
out
.
println
(
" nie było break"
);
}
System
.
out
.
println
(
"za pętlą"
);
}
public
static
int
etykiety
()
{
int
suma
=
0
;
duza:
while
(
true
)
{
for
(
int
i
=
1
;
i
<
10
;
i
++)
{
suma
+=
i
;
if
(
suma
>
100
)
break
duza
;
}
}
return
suma
;
}
public
static
void
main
(
String
[]
args
)
{
etykieta:
// kompiluje się, ale nie ma jak tego użyć
System
.
out
.
println
(
"while"
);
petlaWhile
();
//NK goto etykieta;
System
.
out
.
println
(
"\ndo-while"
);
doWhile
();
System
.
out
.
println
(
"\nfor"
);
petlaFor2
();
System
.
out
.
println
(
"\nLosowanie:"
);
losowanie
();
System
.
out
.
println
(
"\nfor-each"
);
forEach
();
System
.
out
.
println
();
przerwanie
();
System
.
out
.
println
();
int
x
=
etykiety
();
System
.
out
.
println
(
x
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/BreakContinue_Prezentacja.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
import
javax.swing.JOptionPane
;
public
class
BreakContinue_Prezentacja
{
public
static
void
main
(
String
[]
args
)
{
int
licznik
=
0
;
while
(
true
)
{
licznik
++;
JOptionPane
.
showInternalMessageDialog
(
null
,
"Początek pętli, licznik = "
+
licznik
);
int
odp1
=
JOptionPane
.
showConfirmDialog
(
null
,
"Czy zrobić break?"
);
if
(
odp1
==
JOptionPane
.
YES_OPTION
)
{
break
;
// break w pętli powoduje natychmiastowe zakończenie tej pętli i przejście do następnej instrukcji za pętlą
}
JOptionPane
.
showInternalMessageDialog
(
null
,
"Środek pętli. Nie było break."
);
int
odp2
=
JOptionPane
.
showConfirmDialog
(
null
,
"Czy zrobić continue?"
);
if
(
odp2
==
JOptionPane
.
YES_OPTION
)
{
continue
;
// continue powoduje pominięcie reszty instrukcji w bieżącym obrocie pętli
// i przejście od razu na początek następnego obrotu
}
JOptionPane
.
showInternalMessageDialog
(
null
,
"Koniec pętli, nie było break ani continue"
);
}
JOptionPane
.
showInternalMessageDialog
(
null
,
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/DziwnyWhile.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
public
class
DziwnyWhile
{
public
static
void
main
(
String
[]
args
)
{
int
x
=
1
;
{
System
.
out
.
println
(
"Ala ma kota "
+
x
);
x
++;
}
while
(
x
<=
10
)
;
// To jest zwykły blok a potem pętla nieskończona
System
.
out
.
println
(
"Koniec"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/Label.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
public
class
Label
{
public
static
void
main
(
String
[]
args
)
{
label1:
System
.
out
.
println
(
"Cokolwiek"
);
label2:
while
(
true
)
{
double
x
=
Math
.
random
();
if
(
x
>
0.5
)
break
label2
;
}
// goto label1;
// const int n = 10;
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/MartwyKod.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
public
class
MartwyKod
{
void
metoda1
()
{
System
.
out
.
println
(
"OK"
);
return
;
// System.out.println("błąd");
// System.out.println("kolejna linia");
}
void
metoda2
()
throws
Exception
{
System
.
out
.
println
(
"OK"
);
throw
new
Exception
(
"katastrofa"
);
// System.out.println("błąd");
}
public
static
void
main
(
String
[]
args
)
{
// if(true) / if(false) NIE są traktowane jako martwy kod
if
(
false
)
{
System
.
out
.
println
(
"Ala ma kota"
);
}
if
(
true
)
{
System
.
out
.
println
(
"AAAA"
);
}
else
{
System
.
out
.
println
(
"BBBB"
);
}
// while(false) {
// System.out.println("błąd");
// }
while
(
true
)
{
System
.
out
.
println
(
"lkdfjg"
);
}
// System.out.println("błąd");
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/PetlaNieskonczona.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
import
java.time.LocalTime
;
public
class
PetlaNieskonczona
{
public
static
void
main
(
String
[]
args
)
{
int
licznik
=
0
;
while
(
true
)
{
System
.
out
.
printf
(
"%12d : %s%n"
,
++
licznik
,
LocalTime
.
now
());
}
// Kod w tym miejscu jest niepoprawny (Java go nie skompiluje), bo to jest "martwy kod".
// System.out.println("Koniec świata");
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/b_petle/Przerwania.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
b_petle
;
public
class
Przerwania
{
static
void
tabliczka
(
int
n
)
{
for
(
int
i
=
1
;
i
<=
n
;
i
++)
{
for
(
int
j
=
1
;
j
<=
n
;
j
++)
{
System
.
out
.
printf
(
"%3d"
,
i
*
j
);
System
.
out
.
print
(
","
);
}
System
.
out
.
println
(
"#"
);
}
System
.
out
.
println
(
"\n----------------\n"
);
}
static
void
tabliczkaBreak
(
int
n
)
{
for
(
int
i
=
1
;
i
<=
n
;
i
++)
{
for
(
int
j
=
1
;
j
<=
n
;
j
++)
{
System
.
out
.
printf
(
"%3d"
,
i
*
j
);
if
(
i
+
j
>
n
)
break
;
System
.
out
.
print
(
","
);
}
System
.
out
.
println
(
"#"
);
}
System
.
out
.
println
(
"\n----------------\n"
);
}
static
void
tabliczkaBreakEtykieta
(
int
n
)
{
pierwsza:
for
(
int
i
=
1
;
i
<=
n
;
i
++)
{
for
(
int
j
=
1
;
j
<=
n
;
j
++)
{
System
.
out
.
printf
(
"%3d"
,
i
*
j
);
if
(
i
+
j
>
n
)
break
pierwsza
;
System
.
out
.
print
(
","
);
}
System
.
out
.
println
(
"#"
);
}
System
.
out
.
println
(
"\n----------------\n"
);
}
static
void
tabliczkaContinue
(
int
n
)
{
for
(
int
i
=
1
;
i
<=
n
;
i
++)
{
for
(
int
j
=
1
;
j
<=
n
;
j
++)
{
System
.
out
.
printf
(
"%3d"
,
i
*
j
);
if
(
i
+
j
>
n
)
continue
;
System
.
out
.
print
(
","
);
}
System
.
out
.
println
(
"#"
);
}
System
.
out
.
println
(
"\n----------------\n"
);
}
static
void
tabliczkaContinueEtykieta
(
int
n
)
{
pierwsza:
for
(
int
i
=
1
;
i
<=
n
;
i
++)
{
System
.
out
.
println
();
// dodane
for
(
int
j
=
1
;
j
<=
n
;
j
++)
{
System
.
out
.
printf
(
"%3d"
,
i
*
j
);
if
(
i
+
j
>
n
)
continue
pierwsza
;
System
.
out
.
print
(
","
);
}
System
.
out
.
println
(
"#"
);
}
System
.
out
.
println
(
"\n----------------\n"
);
}
public
static
void
main
(
String
[]
args
)
{
tabliczka
(
9
);
tabliczkaBreak
(
9
);
tabliczkaBreakEtykieta
(
9
);
tabliczkaContinue
(
9
);
tabliczkaContinueEtykieta
(
9
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch1.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
javax.swing.JOptionPane
;
public
class
Switch1
{
public
static
void
main
(
String
[]
args
)
{
String
tekst
=
JOptionPane
.
showInputDialog
(
"Podaj numer dnia tygodnia"
);
int
numer
=
Integer
.
parseInt
(
tekst
);
switch
(
numer
)
{
case
1
:
System
.
out
.
println
(
"poniedziałek"
);
case
2
:
System
.
out
.
println
(
"wtorek"
);
case
3
:
System
.
out
.
println
(
"środa"
);
case
4
:
System
.
out
.
println
(
"czwartek"
);
case
5
:
System
.
out
.
println
(
"piątek"
);
System
.
out
.
println
(
"czyli weekendu początek"
);
case
6
:
System
.
out
.
println
(
"sobota"
);
case
7
:
System
.
out
.
println
(
"niedziela"
);
default
:
System
.
out
.
println
(
"niepoprawny numer dnia tygodnia"
);
}
System
.
out
.
println
(
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch2.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
javax.swing.JOptionPane
;
public
class
Switch2
{
public
static
void
main
(
String
[]
args
)
{
String
tekst
=
JOptionPane
.
showInputDialog
(
"Podaj numer dnia tygodnia"
);
int
numer
=
Integer
.
parseInt
(
tekst
);
switch
(
numer
)
{
case
1
:
System
.
out
.
println
(
"poniedziałek"
);
break
;
case
2
:
System
.
out
.
println
(
"wtorek"
);
break
;
case
3
:
System
.
out
.
println
(
"środa"
);
break
;
case
4
:
System
.
out
.
println
(
"czwartek"
);
break
;
case
5
:
System
.
out
.
println
(
"piątek"
);
System
.
out
.
println
(
"czyli weekendu początek"
);
break
;
case
6
:
System
.
out
.
println
(
"sobota"
);
break
;
case
7
:
System
.
out
.
println
(
"niedziela"
);
break
;
default
:
System
.
out
.
println
(
"niepoprawny numer dnia tygodnia"
);
}
System
.
out
.
println
(
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch3.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
java.util.Random
;
import
javax.swing.JOptionPane
;
public
class
Switch3
{
public
static
void
main
(
String
[]
args
)
{
String
tekst
=
JOptionPane
.
showInputDialog
(
"Podaj numer dnia tygodnia"
);
int
numer
=
Integer
.
parseInt
(
tekst
);
final
int
SOBOTA
=
6
;
// stała
// final int SOBOTA = new Random().nextInt(10);
switch
(
numer
)
{
case
3
:
System
.
out
.
println
(
"środa"
);
break
;
case
1
:
System
.
out
.
println
(
"poniedziałek"
);
break
;
case
2
:
System
.
out
.
println
(
"wtorek"
);
break
;
default
:
System
.
out
.
println
(
"niepoprawny numer dnia tygodnia"
);
break
;
case
4
:
System
.
out
.
println
(
"czwartek"
);
break
;
case
2
+
3
:
System
.
out
.
println
(
"piątek"
);
break
;
case
SOBOTA:
System
.
out
.
println
(
"sobota"
);
// tu nie ma break i wypisze się sobota niedziela
case
7
:
System
.
out
.
println
(
"niedziela"
);
}
System
.
out
.
println
(
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch4.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
javax.swing.JOptionPane
;
public
class
Switch4
{
static
String
nazwaDniaTygodnia
(
int
numer
)
{
switch
(
numer
)
{
case
1
:
return
"poniedziałek"
;
case
2
:
return
"wtorek"
;
case
3
:
return
"środa"
;
case
4
:
return
"czwartek"
;
case
5
:
return
"piątek"
;
case
6
:
return
"sobota"
;
case
7
:
return
"niedziela"
;
default
:
throw
new
IllegalArgumentException
(
"Niepoprawny numer dnia tygodnia"
);
}
}
public
static
void
main
(
String
[]
args
)
{
String
tekst
=
JOptionPane
.
showInputDialog
(
"Podaj numer dnia tygodnia"
);
try
{
int
numer
=
Integer
.
parseInt
(
tekst
);
String
nazwa
=
nazwaDniaTygodnia
(
numer
);
System
.
out
.
println
(
"Ten dzień to "
+
nazwa
);
}
catch
(
Exception
wylapanyWyjatek
)
{
System
.
out
.
println
(
"Wystąpił wyjątek "
+
wylapanyWyjatek
);
}
System
.
out
.
println
(
"Koniec programu"
);
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch5.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
public
class
Switch5
{
static
int
ileDniMaMiesiac
(
String
nazwa
)
{
switch
(
nazwa
)
{
case
"styczeń"
:
case
"marzec"
:
case
"maj"
:
case
"lipiec"
:
case
"sierpień"
:
case
"październik"
:
case
"grudzień"
:
return
31
;
case
"kwiecień"
:
case
"czerwiec"
:
case
"wrzesień"
:
case
"listopad"
:
return
30
;
case
"luty"
:
return
28
;
// case null się nie skompiluje
// case null:
// return 0;
default
:
return
0
;
}
}
public
static
void
main
(
String
[]
args
)
{
System
.
out
.
println
(
ileDniMaMiesiac
(
"styczeń"
));
System
.
out
.
println
(
ileDniMaMiesiac
(
"luty"
));
System
.
out
.
println
(
ileDniMaMiesiac
(
"listopad"
));
System
.
out
.
println
();
// takie bajery nie działają:
System
.
out
.
println
(
ileDniMaMiesiac
(
"Lipiec"
));
System
.
out
.
println
(
ileDniMaMiesiac
(
" lipiec "
));
System
.
out
.
println
(
ileDniMaMiesiac
(
"*ec"
));
System
.
out
.
println
(
ileDniMaMiesiac
(
"%ec"
));
System
.
out
.
println
(
ileDniMaMiesiac
(
""
));
System
.
out
.
println
(
ileDniMaMiesiac
(
null
));
// NPE
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch6.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
public
class
Switch6
{
public
static
void
main
(
String
[]
args
)
{
byte
bb
=
100
;
// Wartości podawane w case muszą być zgodne z typem parametru switch-a.
// W przypadku liczb oznacza to także, że liczba musi mieścić się w zakresie,
switch
(
bb
)
{
case
100
:
System
.
out
.
println
(
"100"
);
break
;
//NK case 200: System.out.println("200"); break;
}
short
ss
=
100
;
switch
(
ss
)
{
case
100
:
System
.
out
.
println
(
"100"
);
break
;
case
200
:
System
.
out
.
println
(
"200"
);
break
;
case
4000
:
System
.
out
.
println
(
"4000"
);
break
;
//NK case 33000: System.out.println("100"); break;
}
char
cc
=
'A'
;
switch
(
cc
)
{
case
'A'
:
System
.
out
.
println
(
"AAA"
);
break
;
case
120
:
System
.
out
.
println
(
"BBB"
);
break
;
// case 10 : System.out.println("10"); break;
case
0xA
:
System
.
out
.
println
(
"0xA"
);
break
;
//NK case 65 : System.out.println("CCC"); break;
//NK case -1 : System.out.println("DDD"); break;
case
64000
:
System
.
out
.
println
(
"EEE"
);
break
;
//NK case 66000: System.out.println("FFF"); break;
}
/*
long l = 27L;
// nie ma switch na typach long, float, double
switch(l) {
case 27L : System.out.println("long 27");
}
*/
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/Switch8.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
public
class
Switch8
{
public
static
void
main
(
String
[]
args
)
{
int
x
=
2
;
switch
(
x
)
{
// to jest po prostu operacja arytmetyczna (dokładnie "suma bitowa")
// nie ma to żadnego szczególnego znaczenia dla switch-a
// w tym konkretnym miejscu to wylicza się do wartości 3
case
2
|
3
:
System
.
out
.
println
(
"2 | 3"
);
break
;
//NK case 3:
// System.out.println("3");
case
2
:
// bo to nie jest naruszenie unikalności
System
.
out
.
println
(
"2"
);
break
;
default
:
System
.
out
.
println
(
"default"
);
}
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/SwitchNull_Pusty.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
javax.swing.JOptionPane
;
public
class
SwitchNull_Pusty
{
public
static
void
main
(
String
[]
args
)
{
String
s
=
JOptionPane
.
showInputDialog
(
"Wpisz napis"
);
System
.
out
.
println
(
"Jestem przed switchem, napis = "
+
s
);
switch
(
s
)
{}
System
.
out
.
println
(
"Jestem za switchem"
);
// morał: przekazanie wartości null do switcha (na napisach lub na enumach)
// skutkuje wyjątkiem NPE
}
}
P01-JavaSE/src/main/java/pcz/p03_instrukcje/c_switch/SwitchString_Interaktywnie.java
0 → 100644
View file @
4d33c128
package
pcz
.
p03_instrukcje
.
c_switch
;
import
javax.swing.JOptionPane
;
public
class
SwitchString_Interaktywnie
{
public
static
void
main
(
String
[]
args
)
{
String
s
=
JOptionPane
.
showInputDialog
(
"Wpisz napis"
);
System
.
out
.
println
(
"Jestem przed switchem, napis = "
+
s
);
// Wielkość liter, spacje itp.: mają znaczenie.
// Nie są przeprowadzane żadne "normalizacje".
// Nie działają żadne "wildcardy" typu * % itp.
// Jeśli do switch przekażemy wartość null dojdzie d wyjątku NullPointerException
switch
(
s
)
{
case
"Ala"
:
System
.
out
.
println
(
"Ala ma kota"
);
break
;
case
"Ola"
:
System
.
out
.
println
(
"Ola ma psa"
);
break
;
//NK case null: System.out.println("NULL");
default
:
System
.
out
.
println
(
"Nieznana osoba"
);
}
}
}
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