Du verwendest einen veralteten Browser. Es ist möglich, dass diese oder andere Websites nicht korrekt angezeigt werden. Du solltest ein Upgrade durchführen oder ein alternativer Browser verwenden.
Hallo
ich hab mal wieder mit Java angefangen und hänge an einer Verständnisfrage.
Java:
int i = 5;
String Hallo = "Tach";
String Neu = i;
Das ist ein Code der logischerweise nicht funktioniert, da String und int nicht konvertiert werden können, soweit klar. Aber:
Java:
int i = 5;
String Hallo = "Tach";
String Neu = i+Hallo;
Geht komischerweise? Ich könnte ja jetzt auch rumfaken und sagen: Mach mir aus dem int i einen String indem ich sage String Neu = i+"";
Diese Logik erschließt sich mir momentan nicht.
Dann möchte ich gerne zu einer IP den DNS Namen auslesen bzw benötige ich nur ein true oder false. Folgendes soll passieren: wenn IP Adresse ist nicht erreichbar dann schaue ob du zu dieser IP Adresse einen DNS Namen findest ansonsten schreibe "IP Adresse ist frei."
Aber .getCanonicalHostName ist anscheinend nie null. Deswegen kann das so schonmal nicht funktionieren. Die Auflösung hatte ich schon im try Block aber eine exception habe ich nie bekommen.
Um Strings zusammenzuhängen (konkatinieren) verwendet man entweder die concat Methode oder eben "+".
Der Nachteil von concat ist das diese Methode nur Strings entgegennimmt. Bei "+" wird hingegen der Wert in einen String umgewandelt (sofern auf einer der beiden Seite ein String steht ).
Vor allem bei der 3.Zeile musst du aufpassen. Beim 1."+" steht auf beiden Seiten ein "int" deswegen wird normal addiert, danach steht "int + String" also wird ein neuer String erstellt.
Ich hab das aus Zufall entdeckt aber in meinem Beispiel verkette ich ja keine Strings sondern einen int Wert und einen String Wert. Bei "String Neu = i;" meckert NetBeans rum "incompatible types: int cannon be converted to String". Ich frage das nur weil ich eigentlich weiß dass das anders funktioniert mit der Typenumwandlung.
Klar einer Variable vom Type String kannst du keinen int zuweisen. Diesen musst du unwandeln.
Der "+" Operator übernimmt diese Umwandlung zu String wenn auf einer der beiden Seiten vom "+" ein String steht.
Achsoo, ich hatte erst gedacht das wäre ein Bug
Aber wegen der DNS Abfrage habe ich noch keine Idee. Unter VB sieht das so aus:
Code:
For Each Adresse In ListBox1.Items
Try
Label4.Text = ("Frage DNS Hosteintrag ab: " & Adresse)
Dim DNSEintrag As IPHostEntry = Dns.GetHostEntry(Adresse)
Me.Refresh()
Catch ex As Exception
ListBox2.Items.Add(Adresse)
Me.Refresh()
End Try
Next