Resumen de conocimientos introductorios a C# (basado en lenguaje C)

Prefacio

Este artículo es una introducción a C#. Es un resumen basado en cierto conocimiento del lenguaje C o C++. Por lo tanto, se omitirán muchos conocimientos básicos del lenguaje C, pero se omitirán algunos conocimientos exclusivos de C# o relativamente raros o importantes en el lenguaje C. También se puede resumir en la entrada del blog.

Tabla de contenido

Prefacio

1. Entrada y salida

2. Variables

1. Dobla el código

2. Declarar variables

a.Variable entera con signo

B. Variable entera sin signo

c.Número de punto flotante

d.Tipo especial

3. Constantes

4. Personajes de escape

5. Conversión de tipo

1. Conversión implícita

a. Conversión entre mismos tipos

B. Conversión entre diferentes tipos grandes.

2.Conversión explícita

a. Transferencia forzada entre paréntesis

b.El método Parse convierte a la fuerza el tipo de cadena en el tipo correspondiente

c.Método de conversión

D. Convertir otros tipos a cadenas.

7. Operadores aritméticos

8. Empalme de cuerdas

1.cadena se puede concatenar usando +

2. Método de empalme de cuerdas 2

3. Empalme de impresión de consola

9. Operadores condicionales

1. Entre diferentes tipos numéricos

2. Tipo especial char string bool

10. Operadores lógicos

1. Atención

2. Reglas de cortocircuito del operador lógico

11. Operadores de bits

1. Operación AND bit a bit &

2. Operación OR bit a bit | 

3.Operación XOR ^

4. Inversión de bits ~ (solo entiéndelo)

5. Muévete a la izquierda << y muévete a la derecha >> (simplemente entiéndelo)

12. Operador ternario

13. si declaración

14. declaración de cambio

15. declaración mientras

16. hacer mientras declaración

17. para bucle


1. Entrada y salida

  • Console.WriteLine() imprime una línea de información y automáticamente ajusta la línea
  • Console.Write() no ajustará automáticamente la línea después de imprimir la información.
  • Entrada del usuario Console.ReadLine(), haga clic en Enter para finalizar
  • Console.ReadKey() finalizará cuando el usuario presione el teclado en cualquier momento

2. Variables

1. Dobla el código

Función: dobla el código envuelto por la mitad para evitar una edición de código complicada.

#region MyRegion

...

#endregion

2. Declarar variables

Fórmula: tipo de variable nombre de variable = valor inicial;

Hay 14 tipos de variables:

a.Variable entera con signo

Puede almacenar números positivos y negativos y 0. El rango aproximado se proporciona a continuación (se informará un error si el valor excede el rango al asignar)

  • sbyte -128~-127
  • int -2,1 mil millones ~ 2,1 mil millones
  • corto -32768~32767
  • largo -9 billones ~ 9 billones

Código de muestra

sbyte a = 1;

Console.WriteLine("存储的数:"+a); //输出之间的连接用+

B. Variable entera sin signo

Puede almacenar un cierto rango de 0 y números positivos.

  • bytes 0~255
  • uint 0~4,2 mil millones
  • ucorto 0~65535
  • ulong 0~18 billones

c.Número de punto flotante

  • float almacena 7 u 8 dígitos significativos, dependiendo del redondeo del compilador comenzando con dígitos distintos de cero de izquierda a derecha.
  • Double almacena entre 15 y 17 dígitos significativos. El tipo doble predeterminado para declarar decimales en C# es
  • almacenes decimales 27~28 bits
float f = 0.1234f; //后面要加f 大小写均可

double d = 0.12456434;

decimal de = 0.124543534234t254m; //后面要加m 大小写均可

d.Tipo especial

  • El valor de la variable bool es verdadero o falso, lo que indica el tipo de datos verdadero o falso.
  • char almacena un solo carácter y encierra el valor que se asignará entre comillas simples.
  • cadena almacena la cadena entre comillas dobles para encerrar el valor que se asignará.
string s1="hello", s2="world", s3="good"; //多个变量同时声明

3. Constantes

Declaración de constantes (características: debe inicializarse y no modificarse)

tipo de variable constante nombre de variable = valor inicial;

const int i = 10;

4. Personajes de escape

Fórmula: \carácter

Los caracteres de escape más utilizados son los siguientes:

apóstrofe

\'

Doble comillas

\"

nueva línea

\norte

barra oblicua

\\

Tabulación de pestañas

\ t

retroceso

\b

5. Conversión de tipo

1. Conversión implícita

Reglas: (conversión automática entre diferentes tipos) de rango grande a rango pequeño

a. Conversión entre mismos tipos

long a = 1;
int  b = 2;
a = b;//int隐式转换为long
b = a;//这句是不对的!小范围不能转大范围

Para los números de punto flotante, cabe señalar que el tipo decimal no puede utilizar conversión implícita para almacenar doble y flotante, pero el flotante se puede convertir a doble. No existe una conversión implícita entre tipos especiales bool, char y string.

B. Conversión entre diferentes tipos grandes.

! Las variables firmadas no se pueden convertir implícitamente en variables sin firmar

Ejemplo de código de error:

ushort us2 = 1;
sbyte sb2 = 1;
us2 = sb2;//错误代码!不能转换

! Las variables sin signo se pueden convertir en variables con signo, pero el requisito previo es que el alcance cubierto por la variable con signo debe incluir el tipo sin signo.

int i2 = 1;
uint ui2 = 1;
byte b2 = 1;
i2 = ui2;// 错误!无法覆盖无符号数的全部范围
i2 = b2;// 正确代码
  • Los números de coma flotante pueden cargar cualquier tipo de número entero, ya sea con o sin signo (el decimal no puede almacenar implícitamente números flotantes y dobles, pero puede almacenar implícitamente números enteros)
  • Los números enteros no pueden almacenar implícitamente números de punto flotante
  • El tipo bool no se puede convertir implícitamente a otros tipos.
  • Char no puede almacenar implícitamente variables de otros tipos, pero el tipo char se puede convertir al tipo int y el tipo int se puede convertir implícitamente a otros tipos.

2.Conversión explícita

Requiere manipulación manual de yesos.

Fórmula: tipo de variable nombre de variable = (tipo de variable) variable

a. Transferencia forzada entre paréntesis

(1) Entre las mismas categorías (enteros sin signo, enteros con signo, números de punto flotante), la conversión forzada de corchetes puede causar problemas de rango y excepciones.

short s = 1;
int i = 1;
s = (short)i;

(2) Entre diferentes tipos

  • También puede ocurrir una conversión forzada entre firmado y sin firmar, pero pueden ocurrir problemas de rango.
  • La conversión de números de coma flotante a enteros es principalmente una cuestión de precisión
  • Bool y string no admiten transferencias forzadas.

b.El método Parse convierte a la fuerza el tipo de cadena en el tipo correspondiente

Tipo de variable.Parse("cadena") La cadena debe poder convertirse al tipo correspondiente; de ​​lo contrario, se informará un error 

int i4 = int.Parse("123");
float f3 = float.Parse("1.232");
bool b = bool.Parse("true");
int i4 = int.Parse("123.45");//错误语句,会报错!
short s4 = short.parse("300000");//错误语句,超出范围,会报错!

c.Método de conversión

Conversión más precisa entre tipos

Convert.To tipo de destino (variable o constante) La conversión de una cadena al tipo correspondiente debe ser legal y conforme

int a = Convert.ToInt32("12");
int a = Convert.ToInt32(12.2f);//正确语句 且Convert精度更高,可以四舍五入
int a = Convert.ToInt32(ture);//正确语句 true转为1,false转为0
int a = Convert.ToInt32('a');//正确语句 char转为对应ASCII码
int a = Convert.ToInt32("12.2");//错误,不合法转换
  • Convertir otros métodos ToSByte(), ToInt16(), ToInt64() //16 representa corto, 32 representa int, 64 representa largo
  • De manera similar, si es un tipo sin firmar ToByte(), ToUInt16/32/64()
  • Números de coma flotante: ToSingle(), ToDouble(), ToDecimal()
  • Tipos especiales: ToBoolean(), ToChar(), ToString()

D. Convertir otros tipos a cadenas.

La función es empalmar e imprimir.

Variable.ToString(); //Se puede utilizar cualquier tipo

string str = 1.ToString();
Console.WriteLine("123"+1+true);//这句话是正确的,后面两个会默认调用ToString方法

6. Captura de excepciones

Utilice la captura de excepciones para evitar que el programa se bloquee cuando el código informe un error.

Sintaxis básica:

try
{
    //希望进行异常捕获的代码块
    //如果出错执行catch中的 
}
catch
{
    //catch(Excepetion e) 具体报错跟踪 通过e得到具体错误信息
}
//可选部分
finally
{
    //不管有没有错都会执行
}

7. Operadores aritméticos

No es diferente del lenguaje C.

8. Empalme de cuerdas

1.cadena se puede concatenar usando +

string str = "123";
str = str + "456";//正确
str = str + 1;//正确,默认调用1.ToString();
str += "1" + 4 + true;//正确,复合运算和ToString()都起作用

2. Método de empalme de cuerdas 2

string.Format("Contenido a unir", contenido 1, contenido 2);

El contenido que desea unir se reemplaza con {número} con marcadores de posición: 0~n en orden.

string str2;
str2 = string.Format("我是{0},我今年{1}岁,我想要{2}","Daniel",18,"study");

3. Empalme de impresión de consola

Si el siguiente contenido es mayor que el marcador de posición, no se informará ningún error, pero si es menor que el marcador de posición, se informará un error.

Console.WriteLine("A{0},B{1},C{2}",1,ture,false);

9. Operadores condicionales

La notación es la misma que la del lenguaje C.

1. Entre diferentes tipos numéricos

Regla: siéntase libre de hacer comparaciones de operadores condicionales

int i = 5;
float f = 1.2f
short s = 2;
byte by = 20;
uint ui = 222;

// 以下语句都成立 只要是数值都可以进行比较
result = i > f;
result = f < d;
result = f > by;

2. Tipo especial char string bool

Regla: == y != solo se pueden comparar entre el mismo tipo

Dado que char es un tipo entero especial, se puede comparar con su propio tipo, con tipos numéricos y con tipos de caracteres.

char c = 'a';
result = c > 123;
result = c > 'B';

10. Operadores lógicos

Lógico AND: && Lógico OR: || Lógico NO: !

Las notaciones y reglas son las mismas que en el lenguaje C.

1. Atención

Entre los operadores lógicos, el NOT lógico (!) tiene la mayor prioridad y el AND lógico (&&) tiene mayor prioridad que el OR lógico (||).

Los operadores lógicos tienen menor prioridad que los operadores condicionales y los operadores aritméticos.

2. Reglas de cortocircuito del operador lógico

Siempre que el lado izquierdo del AND lógico o del OR lógico satisfaga la condición, no es necesario volver a ejecutar el lado derecho.

Por ejemplo, si el AND lógico es falso, entonces la expresión de la izquierda es falsa y no es necesario volver a ejecutar la del lado derecho.

11. Operadores de bits

Regla: Concatenar dos valores para realizar cálculos de bits y convertir los valores a binarios

1. Operación AND bit a bit &

Regla: si hay 0, entonces 0

int a = 1; // 002
int b = 5; // 101
int c = a & b;
// 001 & 101 =  001 所以c也就是1

2. Operación OR bit a bit | 

hay 1 o 1

1|0=1

3.Operación XOR ^

Regla: Igual que 0, diferente que 1

  • 1^1 = 1
  • 0^0 = 1

4. Inversión de bits ~ (solo entiéndelo)

Escriba delante del valor para convertir el valor a binario

0 cambia a 1, 1 cambia a 0, lo que implica código complementario 

5. Muévete a la izquierda << y muévete a la derecha >> (simplemente entiéndelo)

Dejemos que el sistema binario de un número se desplace hacia la izquierda y hacia la derecha.

Mueva algunos bits hacia la izquierda y agregue algunos ceros a la derecha.

Mueva algunos números hacia la derecha y elimine algunos números hacia la derecha.

12. Operador ternario

El principio es equivalente al lenguaje C.

13. si declaración

El principio es equivalente al lenguaje C.

14. declaración de cambio

El principio es equivalente al lenguaje C.

15. declaración mientras

El principio es equivalente al lenguaje C.

16. hacer mientras declaración

El principio es equivalente al lenguaje C.

17. para bucle

El principio es equivalente al lenguaje C.

El siguiente artículo es un resumen de los conocimientos básicos de C#, bienvenido a seguir leyendo.

Resumen de conocimientos básicos de C # (basado en lenguaje C)_Blog de Daniel-blog CSDN

Supongo que te gusta

Origin blog.csdn.net/danielxinhj/article/details/130401403
Recomendado
Clasificación