Verschil tussen “char” en “String” in Java

Ik ben een boek voor Java aan het lezen dat ik probeer te leren, en ik heb een vraag. Ik begrijp niet wat het verschil is tussen het type variabele charen String. Er is bijvoorbeeld een verschil tussen inten short, de bytes in het geheugen en het gebied van getallen dat ze hebben.

Maar wat is het verschil tussen charen String? behalve dat char(‘) en “String” (“).

PS: Het is mijn eerste “echte” programmeertaal. (Op school heb ik een neptaal geleerd voor de programmeerles.)


Antwoord 1, autoriteit 100%

charis één teken. Stringis nul of meer tekens.

charis een primitief type. Stringis een klasse.

char c = 'a';
String s = "Hi!";

Let op de enkele aanhalingstekens voor charen dubbele aanhalingstekens voor String.


Antwoord 2, autoriteit 17%

charbetekent één teken. In Java is het UTF-16 karakter.
Stringkan worden gezien als een reeks tekens.

Dus stel je een “Android”-tekenreeks voor. Het bestaat uit 'A', 'n', 'd', 'r', 'o', 'i'en nogmaals 'd'tekens.

charis een primitief type in java en Stringis een klasse die een reeks charsinkapselt.


Antwoord 3, autoriteit 5%

In lekentaal is chareen letter, terwijl Stringeen verzameling letters (of een woord) is. Het onderscheid tussen 'en "is belangrijk, aangezien 'Test'illegaal is in Java.

charis een primitief type, Stringis een klasse


Antwoord 4

Ik raad je aan om de Java-zelfstudiedocumentatie te lezen die op de website van Oracle wordt gehost als je twijfelt over iets dat met Java te maken heeft.

U krijgt een duidelijk begrip van de concepten door de volgende tutorials te volgen:


Antwoord 5

Char is een enkel alfabet waar als String een reeks tekens is.
Char is een primitief datatype waar als String een klasse is.


Antwoord 6

charis een primitief type en kan een enkel teken bevatten.

Stringis in plaats daarvan een referentietype, dus een volwaardig object. Het kan een willekeurig aantal tekens bevatten
(intern slaan String-objecten ze op in een char-array).

Primitieve typen in Java hebben voordelen op het gebied van snelheid en geheugengebruik. Maar het zijn geen echte objecten, dus er zijn enkele mogelijkheden die je verliest door ze te gebruiken. Ze kunnen niet worden gebruikt als parameters van het algemene type, ze kunnen geen methoden of velden hebben, enzovoort.

Elk Java-primitief type heeft echter een bijbehorend volledig object, en de conversie daartussen wordt automagisch gedaan door de compiler (dit wordt autoboxing genoemd).

U kunt bijvoorbeeld het volgende doen:

int i=12;
Integer l=i;

De compiler zorgt voor het converteren van de intnaar een Integer.


Antwoord 7

teken mag op één teken na (letters, cijfers,…)

char example = 'x';

tekenreeks kan nul tekens bevatten of zoveel als u wilt

String example = "Here you can have anything";

Antwoord 8

Een teken bevat één teken, terwijl een tekenreeks veel tekens bevat.


Antwoord 9

char is een primitief type en kan één enkel teken bevatten. String is in plaats daarvan een referentietype, dus een volwaardig object.


Antwoord 10

Nou, char(of zijn wrapper-klasse Character) betekent een enkel teken, dat wil zeggen dat je 'ab'niet kunt schrijven terwijl Stringis een tekst die bestaat uit een aantal karakters en je kunt denken aan een string en een array van karakters (in feite heeft de klasse Stringeen lid char[] value).

Je zou met gewone chararrays kunnen werken, maar dat is nogal vervelend en daarom is de klasse Stringer om een gemakkelijke manier te bieden om met teksten te werken.


Antwoord 11

Een char bevat gewoon een enkel alfabet en een string heeft een volledig woord of een aantal woorden met automatisch een escape-reeks aan het einde om de compiler te laten weten dat de string hier is beëindigd.(0)


Antwoord 12

In string kunnen we meerdere karakters opslaan.
bijv.
char ch='a';

String s="a";

String s1=”aaaa”;


Antwoord 13

Een char bestaat uit één teken en moet tussen enkele aanhalingstekens worden gespecificeerd. Het kan een alfabetisch, numeriek of zelfs speciaal teken bevatten. hieronder zijn een paar voorbeelden:

char a = '4';
char b = '$';
char c = 'B';

Een String definieert dat een regel kan worden gebruikt die tussen dubbele aanhalingstekens staat. Hieronder staan een paar voorbeelden:

String a = "Hello World";
String b = "1234";
String c = "%%";

Antwoord 14

In termen van ASCII-waarden kun je zeggen dat char een enkele ASCII-waarde is van 0-255. Terwijl String een verzameling ASCII-waarden is.
Probeer deze code om beter te leren.

       char c='a';
        String s="a b c d e f g hijkl";
        int i=c;
        System.out.println(i);
        for(int count=0;count<s.length();count++){
            int temp=s.charAt(count);
            System.out.print(temp+" ");
        }

De uitvoer zal zijn:

97

97 32 98 32 99 32 100 32 101 32 102 32 103 32 104 105 106 107 108

Aangezien 97 de ASCII-waarde is voor kleine ‘a’. 32 is de ASCII-waarde voor ruimte. Ik hoop dat dit helpt bij een diepgaand begrip van het concept.


Antwoord 15

Een teken is alles wat u kunt typen, zoals letters, cijfers, leestekens en spaties. Tekenreeksen verschijnen in variabelen, d.w.z. het zijn tekstitems in perls. Een karakter bestaat uit 16 bits. Terwijl de lengte van een string onbeperkt is.

Other episodes