using System; class Operators { static void Main() { int a = 10, b = 15, c = 20, d, e, h, i; bool f, g, j = (a == b), k; d = (a & b); e = (a | b); f = (j && (b == c)); g = (j || (b == c)); h = (a ^ b); i = ~b; k = !j; Console.WriteLine("{0}", d); //10 Console.WriteLine("{0}", e); //15 Console.WriteLine("{0}", f); //False Console.WriteLine("{0}", g); //False Console.WriteLine("{0}", h); //5 Console.WriteLine("{0}", i); //-16 Console.WriteLine("{0}", j); //False Console.WriteLine("{0}", k); //True } }
Language Basics
Bit Operators: move
using System;
class MainClass
{
static void Main(string[] args)
{
int i = 1;
for (int j = 0; j < 8; j++)
{
Console.WriteLine(
"{0} << {1} = {2}", i, j, i << j);
}
}
}
[/csharp]
null pointer
using System; public class MainClass { public static void Main(string[] args) { MyObject localObject = new MyObject(); Console.WriteLine("localObject.n is {0}", localObject.n); if (localObject.nextObject == null) { Console.WriteLine("localObject.nextObject is null"); } } public class MyObject { internal int n; internal MyObject nextObject; } }
C# Namespaces and Using
using ThatConsoleClass = System.Console; public class NamespacesUsing { public static void Main() { ThatConsoleClass.WriteLine("Hello"); } }
Demonstrate a namespace 2
/* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852 */ // Demonstrate a namespace. using System; // Bring Counter into view. using Counter; // Declare a namespace for counters. namespace Counter { // A simple countdown counter. class CountDown { int val; public CountDown(int n) { val = n; } public void reset(int n) { val = n; } public int count() { if(val > 0) return val--; else return 0; } } } public class NSDemo3 { public static void Main() { // now, CountDown can be used directly. CountDown cd1 = new CountDown(10); int i; do { i = cd1.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); CountDown cd2 = new CountDown(20); do { i = cd2.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); cd2.reset(4); do { i = cd2.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); } }
Namespaces prevent name conflicts
/* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852 */ // Namespaces prevent name conflicts. using System; // Declare a namespace for counters. namespace Counter { // A simple countdown counter. class CountDown { int val; public CountDown(int n) { val = n; } public void reset(int n) { val = n; } public int count() { if(val > 0) return val--; else return 0; } } } // Declare another namespace. namespace Counter2 { /* This CountDown is in the default namespace and does not conflict with the one in Counter. */ class CountDown { public void count() { Console.WriteLine("This is count() in the " + "Counter2 namespace."); } } } public class NSDemo2 { public static void Main() { // This is CountDown in the Counter namespace. Counter.CountDown cd1 = new Counter.CountDown(10); // This is CountDown in the default namespace. Counter2.CountDown cd2 = new Counter2.CountDown(); int i; do { i = cd1.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); cd2.count(); } }
Demonstrate a namespace
/* C#: The Complete Reference by Herbert Schildt Publisher: Osborne/McGraw-Hill (March 8, 2002) ISBN: 0072134852 */ using System; // Demonstrate a namespace. // Declare a namespace for counters. namespace Counter { // A simple countdown counter. class CountDown { int val; public CountDown(int n) { val = n; } public void reset(int n) { val = n; } public int count() { if(val > 0) return val--; else return 0; } } } public class NSDemo1 { public static void Main() { Counter.CountDown cd1 = new Counter.CountDown(10); int i; do { i = cd1.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); Counter.CountDown cd2 = new Counter.CountDown(20); do { i = cd2.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); cd2.reset(4); do { i = cd2.count(); Console.Write(i + " "); } while(i > 0); Console.WriteLine(); } }