Wytłumaczy mi ktoś czemu to nic nie wyświetla?
for(char i = '0'; i <= 20; i++) {
System.out.println(i);
}
Wytłumaczy mi ktoś czemu to nic nie wyświetla?
for(char i = '0'; i <= 20; i++) {
System.out.println(i);
}
Bo zero ma kod ascii większy niż 20 i pętla ani razu się nie wykona. To tak jakbyś napisał: for(int i = 48; i <= 20; i++)
.
grzesiek51114 napisał(a):
Bo zero ma kod ascii większy niż 20 i pętla ani razu się nie wykona. To tak jakbyś napisał:
for(int i = 48; i <= 20; i++)
.
tak też nie działa:
for(char i = '\u0000'; i <= 20; i++) {
System.out.println(i);
}
No, a co w ogóle chcesz tutaj osiągnąć? Wpisać liczby od zera do 20? Jeśli tak to to co robisz jest bez sensu, bo zrównujesz kod ascii znaku zero czyli 48 z liczbą 20. Pętla jest bez sensu.
grzesiek51114 napisał(a):
No, a co w ogóle chcesz tutaj osiągnąć? Wpisać liczby od zera do 20? Jeśli tak to to co robisz jest bez sensu, bo zrównujesz kod ascii znaku zero czyli 48 z liczbą 20. Pętla jest bez sensu.
musze odliczyc od 0 to 20 ale w charach nie intach
Nie da się tego prosto zrobić, bo char
przenosi w tym wypadku kody ASCII od zera do dziewięciu. Poza tym char
to jeden znak więc trzeba kombinować. Tak na szybkiego:
/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
public static void main (String[] args) throws java.lang.Exception
{
for(char i = '0'; i < '2'; i++)
{
for(char c = '0'; c <= '9'; c++)
{
// Nie znam javy ale na pewno da się to zastąpić jednym println ;)
System.out.print(i == '0' ? ' ' : i);
System.out.print(c);
System.out.println();
}
}
}
}
stasiek_raczejava napisał(a):
grzesiek51114 napisał(a):
No, a co w ogóle chcesz tutaj osiągnąć? Wpisać liczby od zera do 20? Jeśli tak to to co robisz jest bez sensu, bo zrównujesz kod ascii znaku zero czyli 48 z liczbą 20. Pętla jest bez sensu.
musze odliczyc od 0 to 20 ale w charach nie intach
czy to jakies zadanie domowe z butkampu ?
Sceptyczny Dinozaur napisał(a):
stasiek_raczejava napisał(a):
grzesiek51114 napisał(a):
No, a co w ogóle chcesz tutaj osiągnąć? Wpisać liczby od zera do 20? Jeśli tak to to co robisz jest bez sensu, bo zrównujesz kod ascii znaku zero czyli 48 z liczbą 20. Pętla jest bez sensu.
musze odliczyc od 0 to 20 ale w charach nie intach
czy to jakies zadanie domowe z butkampu ?
nope, prywatne zajecia