Tutoriel par Examples: ci



Les méthodes d'extension peuvent également être utilisées comme méthodes classiques de classe statique. Cette façon d'appeler une méthode d'extension est plus détaillée, mais elle est nécessaire dans certains cas. static class StringExtensions { public static string Shorten(this s...
Les doubles guillemets dans les chaînes verbatim peuvent être échappés en utilisant 2 doubles guillemets séquentiels "" pour représenter un guillemet double " dans la chaîne résultante. var str = @"""I don't think so,"" he said."; Console.WriteLine(str)...
Par définition, les opérateurs booléens en court-circuit n'évalueront le deuxième opérande que si le premier opérande ne peut pas déterminer le résultat global de l'expression. Cela signifie que si vous utilisez l'opérateur && comme firstCondition && secondCondition, il...
using du sucre syntaxique vous permet de garantir qu'une ressource est nettoyée sans avoir besoin d'un bloc try-finally explicite. Cela signifie que votre code sera beaucoup plus propre et que vous ne perdrez pas de ressources non gérées. Standard Dispose motif de nettoyage, pour les objet...
Apostrophes char apostrophe = '\''; Barre oblique inverse char oneBackslash = '\\';
Barre oblique inverse // The filename will be c:\myfile.txt in both cases string filename = "c:\\myfile.txt"; string filename = @"c:\myfile.txt"; Le deuxième exemple utilise une chaîne littérale textuelle , qui ne traite pas la barre oblique inverse comme un caractère d'...
try { /* code to open a file */ } catch (System.IO.FileNotFoundException) { /* code to handle the file being not found */ } catch (System.IO.UnauthorizedAccessException) { /* code to handle not being allowed access to the file */ } catch (System.IO.IOException) { /* cod...
public delegate int ModifyInt(int input); ModifyInt multiplyByTwo = x => x * 2; La syntaxe d'expression Lambda ci-dessus est équivalente au code explicite suivant: public delegate int ModifyInt(int input); ModifyInt multiplyByTwo = delegate(int x){ return x * 2; };
using st = System.Text; //allows you to access classes within this namespace such as StringBuilder //prefixing them with only the defined alias and not the full namespace. i.e: //... var sb = new st.StringBuilder(); //instead of var sb = new System.Text.StringBuilder();
Une tâche peut être créée en instanciant directement la classe de Task ... var task = new Task(() => { Console.WriteLine("Task code starting..."); Thread.Sleep(2000); Console.WriteLine("...task code ending!"); }); Console.WriteLine("Starting task...&q...
Lors de la transmission d'arguments formels à une méthode générique, les arguments de type générique pertinents peuvent généralement être déduits implicitement. Si tous les types génériques peuvent être déduits, leur spécification dans la syntaxe est facultative. Considérons la méthode génériq...
Vous pouvez étendre les fonctionnalités des méthodes de yield existantes en transmettant une ou plusieurs valeurs ou éléments pouvant définir une condition de terminaison dans la fonction en appelant une yield break pour empêcher l'exécution de la boucle interne. public static IEnumerable<in...
Une implémentation d'interface explicite est nécessaire lorsque vous implémentez plusieurs interfaces qui définissent une méthode commune, mais différentes implémentations sont requises selon l'interface utilisée pour appeler la méthode (notez que vous n'avez pas besoin d'implémenta...
string helloWorld = "hello world, how is it going?"; string[] parts1 = helloWorld.Split(','); //parts1: ["hello world", " how is it going?"] string[] parts2 = helloWorld.Split(' '); //parts2: ["hello", "world,", "how", "is&qu...
Des dépendances peuvent être ajoutées pour une saveur de produit spécifique, de la même manière que vous pouvez les ajouter pour des configurations de construction spécifiques. Pour cet exemple, supposons que nous ayons déjà défini deux variantes de produits appelées free et paid (plus sur la défi...
Des ressources peuvent être ajoutées pour une saveur de produit spécifique. Pour cet exemple, supposons que nous avons déjà défini deux versions de produits appelées free et paid . Afin d'ajouter des ressources spécifiques aux produits, nous créons des dossiers de ressources supplémentaires à ...
Toutes les opérations liées à Swing se produisent sur un fil dédié (EDT - E vent D ispatch T HLit). Si ce thread est bloqué, l'interface utilisateur ne répond plus. Par conséquent, si vous souhaitez retarder une opération, vous ne pouvez pas utiliser Thread.sleep . Utilisez plutôt un javax.swi...
Placez ce code dans un fichier nommé HelloWorld.scala : object Hello { def main(args: Array[String]): Unit = { println("Hello World!") } } Démo en direct Pour le compiler en bytecode qui est exécutable par la JVM: $ scalac HelloWorld.scala Pour l'exécuter: $ scala Hel...
Les cas d'énumération peuvent contenir une ou plusieurs charges utiles ( valeurs associées ): enum Action { case jump case kick case move(distance: Float) // The "move" case has an associated distance } Le payload doit être fourni lors de l’instanciation de la valeu...
Logical OR ( || ), lisant de gauche à droite, évaluera la première valeur de vérité . Si aucune valeur de vérité n'est trouvée, la dernière valeur est renvoyée. var a = 'hello' || ''; // a = 'hello' var b = '' || []; // b = [] var c = '' || undefined; //...

Page 1 de 44