[{"data":1,"prerenderedAt":1048},["ShallowReactive",2],{"page-\u002Fjava\u002Fvariables-et-types":3,"pieces-java":1005,"autour-\u002Fjava\u002Fvariables-et-types":1030,"prerequis-\u002Fjava\u002Fvariables-et-types":1035,"plan-java":1037},{"id":4,"title":5,"body":6,"description":974,"extension":975,"ligne":51,"meta":976,"motsCles":977,"navigation":979,"niveau":980,"path":981,"prerequis":982,"ressources":984,"seo":996,"sources":997,"stem":1003,"__hash__":1004},"docs\u002Fjava\u002F02.variables-et-types.md","Variables, types et String",{"type":7,"value":8,"toc":963},"minimark",[9,14,32,36,45,126,137,144,148,155,250,256,276,280,285,365,379,396,400,411,470,481,488,522,526,540,608,626,630,637,678,684,690,712,719,723,741,813,825,837,874,884,901,905,959],[10,11,13],"h2",{"id":12},"ce-que-tu-vas-apprendre","Ce que tu vas apprendre",[15,16,17,21,29],"ul",{},[18,19,20],"li",{},"Déclarer une variable en précisant son type.",[18,22,23,24,28],{},"Connaître les principaux types primitifs et la classe ",[25,26,27],"code",{},"String",".",[18,30,31],{},"Convertir une valeur d'un type à un autre sans surprise.",[10,33,35],{"id":34},"déclarer-des-variables","Déclarer des variables",[37,38,39,40,44],"p",{},"Une ",[41,42,43],"strong",{},"variable"," est une case nommée qui contient une valeur. En Java, tu écris le type avant le nom :",[46,47,53],"pre",{"className":48,"code":49,"filename":50,"language":51,"meta":52,"style":52},"language-java shiki shiki-themes github-light-default github-dark-default github-dark-default","String nom = \"Crêpes\";\nint minutes = 20;\ndouble prix = 3.5;\nboolean vegetarien = true;\n","Recette.java","java","",[25,54,55,77,94,110],{"__ignoreMap":52},[56,57,60,63,66,70,74],"span",{"class":58,"line":59},"line",1,[56,61,27],{"class":62},"scfrF",[56,64,65],{"class":62}," nom",[56,67,69],{"class":68},"sOnC1"," =",[56,71,73],{"class":72},"shWOn"," \"Crêpes\"",[56,75,76],{"class":62},";\n",[56,78,80,83,86,88,92],{"class":58,"line":79},2,[56,81,82],{"class":68},"int",[56,84,85],{"class":62}," minutes",[56,87,69],{"class":68},[56,89,91],{"class":90},"s5iOY"," 20",[56,93,76],{"class":62},[56,95,97,100,103,105,108],{"class":58,"line":96},3,[56,98,99],{"class":68},"double",[56,101,102],{"class":62}," prix",[56,104,69],{"class":68},[56,106,107],{"class":90}," 3.5",[56,109,76],{"class":62},[56,111,113,116,119,121,124],{"class":58,"line":112},4,[56,114,115],{"class":68},"boolean",[56,117,118],{"class":62}," vegetarien",[56,120,69],{"class":68},[56,122,123],{"class":90}," true",[56,125,76],{"class":62},[37,127,128,129,132,133,136],{},"Java est ",[41,130,131],{},"typé statiquement"," : le type d'une variable est fixé à sa déclaration et ne change plus. Écrire ",[25,134,135],{},"minutes = \"vingt\""," est refusé par le compilateur.",[37,138,139,140,143],{},"Chaque ligne se termine par un point-virgule. Le signe ",[25,141,142],{},"="," copie la valeur de droite dans la variable de gauche.",[10,145,147],{"id":146},"les-types-primitifs","Les types primitifs",[37,149,150,151,154],{},"Un ",[41,152,153],{},"type primitif"," contient directement une valeur simple. Il s'écrit en minuscules.",[156,157,158,174],"table",{},[159,160,161],"thead",{},[162,163,164,168,171],"tr",{},[165,166,167],"th",{},"Type",[165,169,170],{},"Contenu",[165,172,173],{},"Exemple",[175,176,177,192,207,221,235],"tbody",{},[162,178,179,184,187],{},[180,181,182],"td",{},[25,183,82],{},[180,185,186],{},"entier",[180,188,189],{},[25,190,191],{},"20",[162,193,194,199,202],{},[180,195,196],{},[25,197,198],{},"long",[180,200,201],{},"grand entier",[180,203,204],{},[25,205,206],{},"5_000_000_000L",[162,208,209,213,216],{},[180,210,211],{},[25,212,99],{},[180,214,215],{},"nombre à virgule",[180,217,218],{},[25,219,220],{},"3.5",[162,222,223,227,230],{},[180,224,225],{},[25,226,115],{},[180,228,229],{},"vrai ou faux",[180,231,232],{},[25,233,234],{},"true",[162,236,237,242,245],{},[180,238,239],{},[25,240,241],{},"char",[180,243,244],{},"un seul caractère",[180,246,247],{},[25,248,249],{},"'A'",[37,251,252,253,255],{},"Le séparateur décimal est le point, pas la virgule. Un ",[25,254,241],{}," s'écrit entre apostrophes, un texte entre guillemets doubles.",[37,257,258,259,262,263,266,267,270,271,266,273,275],{},"Il existe aussi ",[25,260,261],{},"byte",", ",[25,264,265],{},"short"," et ",[25,268,269],{},"float",". Tu les croiseras rarement au début : ",[25,272,82],{},[25,274,99],{}," suffisent pour la plupart des cas.",[10,277,279],{"id":278},"string-le-texte","String : le texte",[37,281,282,284],{},[25,283,27],{}," n'est pas un type primitif mais une classe. Elle s'écrit avec une majuscule :",[46,286,288],{"className":48,"code":287,"language":51,"meta":52,"style":52},"String nom = \"Tarte aux pommes\";\nSystem.out.println(nom.length());      \u002F\u002F 16\nSystem.out.println(nom.toUpperCase()); \u002F\u002F TARTE AUX POMMES\nSystem.out.println(nom.contains(\"pommes\")); \u002F\u002F true\n",[25,289,290,303,325,342],{"__ignoreMap":52},[56,291,292,294,296,298,301],{"class":58,"line":59},[56,293,27],{"class":62},[56,295,65],{"class":62},[56,297,69],{"class":68},[56,299,300],{"class":72}," \"Tarte aux pommes\"",[56,302,76],{"class":62},[56,304,305,308,312,315,318,321],{"class":58,"line":79},[56,306,307],{"class":62},"System.out.",[56,309,311],{"class":310},"syCW7","println",[56,313,314],{"class":62},"(nom.",[56,316,317],{"class":310},"length",[56,319,320],{"class":62},"());      ",[56,322,324],{"class":323},"sd6ml","\u002F\u002F 16\n",[56,326,327,329,331,333,336,339],{"class":58,"line":96},[56,328,307],{"class":62},[56,330,311],{"class":310},[56,332,314],{"class":62},[56,334,335],{"class":310},"toUpperCase",[56,337,338],{"class":62},"()); ",[56,340,341],{"class":323},"\u002F\u002F TARTE AUX POMMES\n",[56,343,344,346,348,350,353,356,359,362],{"class":58,"line":112},[56,345,307],{"class":62},[56,347,311],{"class":310},[56,349,314],{"class":62},[56,351,352],{"class":310},"contains",[56,354,355],{"class":62},"(",[56,357,358],{"class":72},"\"pommes\"",[56,360,361],{"class":62},")); ",[56,363,364],{"class":323},"\u002F\u002F true\n",[37,366,39,367,370,371,374,375,378],{},[41,368,369],{},"méthode"," est une action attachée à une valeur, appelée avec un point : ",[25,372,373],{},"nom.length()",". Ici, ",[25,376,377],{},"length()"," renvoie le nombre de caractères.",[37,380,39,381,383,384,387,388,391,392,395],{},[25,382,27],{}," est ",[41,385,386],{},"immuable"," : ",[25,389,390],{},"toUpperCase()"," ne modifie pas ",[25,393,394],{},"nom",", elle renvoie un nouveau texte. Pour garder le résultat, stocke-le dans une variable.",[10,397,399],{"id":398},"assembler-du-texte","Assembler du texte",[37,401,402,403,406,407,410],{},"Le signe ",[25,404,405],{},"+"," colle deux textes. Pour insérer des valeurs dans une phrase, ",[25,408,409],{},"formatted"," est plus lisible :",[46,412,414],{"className":48,"code":413,"language":51,"meta":52,"style":52},"String phrase = \"Prépare \" + nom + \" en \" + minutes + \" minutes\";\nString autre = \"Prépare %s en %d minutes\".formatted(nom, minutes);\n",[25,415,416,451],{"__ignoreMap":52},[56,417,418,420,423,425,428,431,434,436,439,441,444,446,449],{"class":58,"line":59},[56,419,27],{"class":62},[56,421,422],{"class":62}," phrase",[56,424,69],{"class":68},[56,426,427],{"class":72}," \"Prépare \"",[56,429,430],{"class":68}," +",[56,432,433],{"class":62}," nom ",[56,435,405],{"class":68},[56,437,438],{"class":72}," \" en \"",[56,440,430],{"class":68},[56,442,443],{"class":62}," minutes ",[56,445,405],{"class":68},[56,447,448],{"class":72}," \" minutes\"",[56,450,76],{"class":62},[56,452,453,455,458,460,463,465,467],{"class":58,"line":79},[56,454,27],{"class":62},[56,456,457],{"class":62}," autre",[56,459,69],{"class":68},[56,461,462],{"class":72}," \"Prépare %s en %d minutes\"",[56,464,28],{"class":62},[56,466,409],{"class":310},[56,468,469],{"class":62},"(nom, minutes);\n",[37,471,472,473,476,477,480],{},"Dans le modèle, ",[25,474,475],{},"%s"," accueille un texte et ",[25,478,479],{},"%d"," un entier. Les valeurs sont données dans l'ordre.",[37,482,483,484,487],{},"Pour un texte sur plusieurs lignes, un ",[41,485,486],{},"bloc de texte"," s'ouvre et se ferme par trois guillemets :",[46,489,491],{"className":48,"code":490,"language":51,"meta":52,"style":52},"String etapes = \"\"\"\n    1. Mélanger\n    2. Cuire\n    \"\"\";\n",[25,492,493,505,510,515],{"__ignoreMap":52},[56,494,495,497,500,502],{"class":58,"line":59},[56,496,27],{"class":62},[56,498,499],{"class":62}," etapes",[56,501,69],{"class":68},[56,503,504],{"class":72}," \"\"\"\n",[56,506,507],{"class":58,"line":79},[56,508,509],{"class":72},"    1. Mélanger\n",[56,511,512],{"class":58,"line":96},[56,513,514],{"class":72},"    2. Cuire\n",[56,516,517,520],{"class":58,"line":112},[56,518,519],{"class":72},"    \"\"\"",[56,521,76],{"class":62},[10,523,525],{"id":524},"comparer-des-textes-equals","Comparer des textes : equals",[37,527,528,529,532,533,535,536,539],{},"Pour comparer des types primitifs, on utilise ",[25,530,531],{},"==",". Pour comparer des ",[25,534,27],{},", on utilise ",[25,537,538],{},"equals"," :",[46,541,543],{"className":48,"code":542,"language":51,"meta":52,"style":52},"String a = \"crêpes\";\nString b = \"crêpes\";\nSystem.out.println(a.equals(b)); \u002F\u002F true\nSystem.out.println(a.equalsIgnoreCase(\"CRÊPES\")); \u002F\u002F true\n",[25,544,545,559,572,588],{"__ignoreMap":52},[56,546,547,549,552,554,557],{"class":58,"line":59},[56,548,27],{"class":62},[56,550,551],{"class":62}," a",[56,553,69],{"class":68},[56,555,556],{"class":72}," \"crêpes\"",[56,558,76],{"class":62},[56,560,561,563,566,568,570],{"class":58,"line":79},[56,562,27],{"class":62},[56,564,565],{"class":62}," b",[56,567,69],{"class":68},[56,569,556],{"class":72},[56,571,76],{"class":62},[56,573,574,576,578,581,583,586],{"class":58,"line":96},[56,575,307],{"class":62},[56,577,311],{"class":310},[56,579,580],{"class":62},"(a.",[56,582,538],{"class":310},[56,584,585],{"class":62},"(b)); ",[56,587,364],{"class":323},[56,589,590,592,594,596,599,601,604,606],{"class":58,"line":112},[56,591,307],{"class":62},[56,593,311],{"class":310},[56,595,580],{"class":62},[56,597,598],{"class":310},"equalsIgnoreCase",[56,600,355],{"class":62},[56,602,603],{"class":72},"\"CRÊPES\"",[56,605,361],{"class":62},[56,607,364],{"class":323},[609,610,611],"warning",{},[37,612,613,614,262,616,618,619,622,623,625],{},"Avec des objets comme ",[25,615,27],{},[25,617,531],{}," vérifie si ce sont ",[41,620,621],{},"la même instance en mémoire",", pas si le texte est identique. Utilise toujours ",[25,624,538],{}," pour comparer du texte.",[10,627,629],{"id":628},"var-et-final","var et final",[37,631,632,633,636],{},"Quand le type saute aux yeux, ",[25,634,635],{},"var"," laisse le compilateur le déduire :",[46,638,640],{"className":48,"code":639,"language":51,"meta":52,"style":52},"var portions = 4;      \u002F\u002F int\nvar titre = \"Ratatouille\"; \u002F\u002F String\n",[25,641,642,660],{"__ignoreMap":52},[56,643,644,646,649,651,654,657],{"class":58,"line":59},[56,645,635],{"class":68},[56,647,648],{"class":62}," portions",[56,650,69],{"class":68},[56,652,653],{"class":90}," 4",[56,655,656],{"class":62},";      ",[56,658,659],{"class":323},"\u002F\u002F int\n",[56,661,662,664,667,669,672,675],{"class":58,"line":79},[56,663,635],{"class":68},[56,665,666],{"class":62}," titre",[56,668,69],{"class":68},[56,670,671],{"class":72}," \"Ratatouille\"",[56,673,674],{"class":62},"; ",[56,676,677],{"class":323},"\u002F\u002F String\n",[37,679,680,681,683],{},"Le type reste fixe : ",[25,682,635],{}," évite seulement de l'écrire. Il ne fonctionne que dans une méthode, avec une valeur initiale.",[37,685,686,687,539],{},"Pour une valeur qui ne doit jamais changer, ajoute ",[25,688,689],{},"final",[46,691,693],{"className":48,"code":692,"language":51,"meta":52,"style":52},"final double TVA = 0.055;\n",[25,694,695],{"__ignoreMap":52},[56,696,697,699,702,705,707,710],{"class":58,"line":59},[56,698,689],{"class":68},[56,700,701],{"class":68}," double",[56,703,704],{"class":62}," TVA",[56,706,69],{"class":68},[56,708,709],{"class":90}," 0.055",[56,711,76],{"class":62},[37,713,714,715,718],{},"Toute tentative de réaffecter ",[25,716,717],{},"TVA"," fait échouer la compilation. Par convention, une constante s'écrit en majuscules.",[10,720,722],{"id":721},"calculs-et-conversions","Calculs et conversions",[37,724,725,726,262,728,262,731,262,734,266,737,740],{},"Les opérateurs sont ",[25,727,405],{},[25,729,730],{},"-",[25,732,733],{},"*",[25,735,736],{},"\u002F",[25,738,739],{},"%"," (le reste de la division).",[46,742,744],{"className":48,"code":743,"language":51,"meta":52,"style":52},"int total = 7 \u002F 2;       \u002F\u002F 3, division entière\ndouble exact = 7 \u002F 2.0;  \u002F\u002F 3.5\nint reste = 7 % 2;       \u002F\u002F 1\n",[25,745,746,770,792],{"__ignoreMap":52},[56,747,748,750,753,755,758,761,764,767],{"class":58,"line":59},[56,749,82],{"class":68},[56,751,752],{"class":62}," total",[56,754,69],{"class":68},[56,756,757],{"class":90}," 7",[56,759,760],{"class":68}," \u002F",[56,762,763],{"class":90}," 2",[56,765,766],{"class":62},";       ",[56,768,769],{"class":323},"\u002F\u002F 3, division entière\n",[56,771,772,774,777,779,781,783,786,789],{"class":58,"line":79},[56,773,99],{"class":68},[56,775,776],{"class":62}," exact",[56,778,69],{"class":68},[56,780,757],{"class":90},[56,782,760],{"class":68},[56,784,785],{"class":90}," 2.0",[56,787,788],{"class":62},";  ",[56,790,791],{"class":323},"\u002F\u002F 3.5\n",[56,793,794,796,799,801,803,806,808,810],{"class":58,"line":96},[56,795,82],{"class":68},[56,797,798],{"class":62}," reste",[56,800,69],{"class":68},[56,802,757],{"class":90},[56,804,805],{"class":68}," %",[56,807,763],{"class":90},[56,809,766],{"class":62},[56,811,812],{"class":323},"\u002F\u002F 1\n",[37,814,815,816,818,819,821,822,824],{},"Quand les deux nombres sont des ",[25,817,82],{},", le résultat est un ",[25,820,82],{}," : la partie décimale disparaît. Il suffit qu'un des deux soit un ",[25,823,99],{}," pour obtenir un résultat décimal.",[37,826,827,828,831,832,836],{},"Pour passer d'un type large à un type plus étroit, on force avec une ",[41,829,830],{},"conversion explicite"," (",[833,834,835],"em",{},"cast",") :",[46,838,840],{"className":48,"code":839,"language":51,"meta":52,"style":52},"double prix = 3.99;\nint arrondi = (int) prix; \u002F\u002F 3, la partie décimale est coupée\n",[25,841,842,855],{"__ignoreMap":52},[56,843,844,846,848,850,853],{"class":58,"line":59},[56,845,99],{"class":68},[56,847,102],{"class":62},[56,849,69],{"class":68},[56,851,852],{"class":90}," 3.99",[56,854,76],{"class":62},[56,856,857,859,862,864,866,868,871],{"class":58,"line":79},[56,858,82],{"class":68},[56,860,861],{"class":62}," arrondi",[56,863,69],{"class":68},[56,865,831],{"class":62},[56,867,82],{"class":68},[56,869,870],{"class":62},") prix; ",[56,872,873],{"class":323},"\u002F\u002F 3, la partie décimale est coupée\n",[37,875,876,877,880,881,28],{},"Pour lire un nombre dans un texte, on utilise ",[25,878,879],{},"Integer.parseInt(\"20\")"," ou ",[25,882,883],{},"Double.parseDouble(\"3.5\")",[885,886,887],"tip",{},[37,888,889,890,387,893,896,897,900],{},"Choisis des noms de variables explicites en ",[25,891,892],{},"camelCase",[25,894,895],{},"dureeCuisson"," plutôt que ",[25,898,899],{},"d",". Le code se lit bien plus souvent qu'il ne s'écrit.",[10,902,904],{"id":903},"à-retenir","À retenir",[15,906,907,913,928,938,946],{},[18,908,909,910,28],{},"Une variable se déclare avec son type : ",[25,911,912],{},"int minutes = 20;",[18,914,915,916,262,918,262,920,262,922,924,925,927],{},"Les types primitifs (",[25,917,82],{},[25,919,99],{},[25,921,115],{},[25,923,241],{},") s'écrivent en minuscules ; ",[25,926,27],{}," est une classe.",[18,929,39,930,932,933,935,936,28],{},[25,931,27],{}," est immuable ; compare-la avec ",[25,934,538],{},", jamais avec ",[25,937,531],{},[18,939,940,942,943,945],{},[25,941,635],{}," déduit le type, ",[25,944,689],{}," interdit de changer la valeur.",[18,947,948,949,951,952,954,955,958],{},"Une division de deux ",[25,950,82],{}," donne un ",[25,953,82],{}," ; ajoute ",[25,956,957],{},".0"," ou un cast pour contrôler le résultat.",[960,961,962],"style",{},"html pre.shiki code .scfrF, html code.shiki .scfrF{--shiki-light:#1F2328;--shiki-default:#E6EDF3;--shiki-dark:#E6EDF3}html pre.shiki code .sOnC1, html code.shiki .sOnC1{--shiki-light:#CF222E;--shiki-default:#FF7B72;--shiki-dark:#FF7B72}html pre.shiki code .shWOn, html code.shiki .shWOn{--shiki-light:#0A3069;--shiki-default:#A5D6FF;--shiki-dark:#A5D6FF}html pre.shiki code .s5iOY, html code.shiki .s5iOY{--shiki-light:#0550AE;--shiki-default:#79C0FF;--shiki-dark:#79C0FF}html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .syCW7, html code.shiki .syCW7{--shiki-light:#8250DF;--shiki-default:#D2A8FF;--shiki-dark:#D2A8FF}html pre.shiki code .sd6ml, html code.shiki .sd6ml{--shiki-light:#6E7781;--shiki-default:#8B949E;--shiki-dark:#8B949E}",{"title":52,"searchDepth":79,"depth":96,"links":964},[965,966,967,968,969,970,971,972,973],{"id":12,"depth":79,"text":13},{"id":34,"depth":79,"text":35},{"id":146,"depth":79,"text":147},{"id":278,"depth":79,"text":279},{"id":398,"depth":79,"text":399},{"id":524,"depth":79,"text":525},{"id":628,"depth":79,"text":629},{"id":721,"depth":79,"text":722},{"id":903,"depth":79,"text":904},"Déclarer des variables Java, choisir entre types primitifs et String, et manipuler du texte.","md",{},[43,82,99,115,241,27,635,689,978],"conversion",true,"debutant","\u002Fjava\u002Fvariables-et-types",[983],"\u002Fjava\u002Fjvm-et-premier-programme",[985,989,992],{"nom":986,"url":987,"type":988},"OpenClassrooms, Apprenez à programmer en Java","https:\u002F\u002Fopenclassrooms.com\u002Ffr\u002Fcourses\u002F6173501-apprenez-a-programmer-en-java","cours",{"nom":990,"url":991,"type":988},"Développons en Java (Jean-Michel Doudoux)","https:\u002F\u002Fwww.jmdoudoux.fr\u002Fjava\u002Fdej\u002Findex.htm",{"nom":993,"url":994,"type":995,"anglais":979},"Bases du langage (dev.java, en anglais)","https:\u002F\u002Fdev.java\u002Flearn\u002Flanguage-basics\u002F","doc",{"title":5,"description":974},[998,1000],{"nom":999,"url":994},"Variables, tutoriel dev.java (en anglais)",{"nom":1001,"url":1002},"Classe String, Java SE 25 (en anglais)","https:\u002F\u002Fdocs.oracle.com\u002Fen\u002Fjava\u002Fjavase\u002F25\u002Fdocs\u002Fapi\u002Fjava.base\u002Fjava\u002Flang\u002FString.html","java\u002F02.variables-et-types","bYkIBkV7uYmt0pKpl848uYp6DwPmu4ucKrhEHTsMFRw",[1006,1009,1010,1014,1018,1022,1026],{"path":983,"title":1007,"stem":1008},"La JVM et ton premier programme","java\u002F01.jvm-et-premier-programme",{"path":981,"title":5,"stem":1003},{"path":1011,"title":1012,"stem":1013},"\u002Fjava\u002Fconditions-boucles-methodes","Conditions, boucles et méthodes","java\u002F03.conditions-boucles-methodes",{"path":1015,"title":1016,"stem":1017},"\u002Fjava\u002Ftableaux-classes-et-records","Tableaux, classes et records","java\u002F04.tableaux-classes-et-records",{"path":1019,"title":1020,"stem":1021},"\u002Fjava\u002Fheritage-et-interfaces","Héritage, interfaces et polymorphisme","java\u002F05.heritage-et-interfaces",{"path":1023,"title":1024,"stem":1025},"\u002Fjava\u002Fcollections-generiques-exceptions","Collections, génériques et exceptions","java\u002F06.collections-generiques-exceptions",{"path":1027,"title":1028,"stem":1029},"\u002Fjava","Java","java\u002Findex",[1031,1033],{"title":1007,"path":983,"stem":1008,"description":1032,"children":-1},"Comprendre ce que sont la JVM et le JDK, installer Java 25, puis compiler et lancer un premier programme.",{"title":1012,"path":1011,"stem":1013,"description":1034,"children":-1},"Faire des choix avec if et switch, répéter avec for et while, et regrouper du code dans des méthodes.",[1036],{"path":983,"title":1007,"ligne":51},[1038,1039,1040,1041,1043,1044,1046],{"path":983,"title":1007,"niveau":980,"stem":1008},{"path":981,"title":5,"niveau":980,"stem":1003},{"path":1011,"title":1012,"niveau":980,"stem":1013},{"path":1015,"title":1016,"niveau":1042,"stem":1017},"intermediaire",{"path":1019,"title":1020,"niveau":1042,"stem":1021},{"path":1023,"title":1024,"niveau":1045,"stem":1025},"avance",{"path":1027,"title":1028,"niveau":1047,"stem":1029},"memo",1794583453188]