Учебники

VB.Net — Переменные

Переменная — это не что иное, как имя, данное области памяти, которой могут манипулировать наши программы. Каждая переменная в VB.Net имеет определенный тип, который определяет размер и расположение памяти переменной; диапазон значений, которые могут быть сохранены в этой памяти; и набор операций, которые могут быть применены к переменной.

Мы уже обсуждали различные типы данных. Основные типы значений, представленные в VB.Net, могут быть классифицированы как —

Тип пример
Интегральные типы SByte, Byte, Short, UShort, Integer, UInteger, Long, ULong и Char
Типы с плавающей точкой Одноместные и двухместные
Десятичные типы Десятичный
Булевы типы Истинные или Ложные значения, как назначено
Типы дат Дата

VB.Net также позволяет определять другие типы значений переменных, таких как Enum, и ссылочные типы переменных, таких как Class . Мы обсудим типы дат и классы в следующих главах.

Объявление переменных в VB.Net

Оператор Dim используется для объявления переменных и выделения памяти для одной или нескольких переменных. Оператор Dim используется на уровне модуля, класса, структуры, процедуры или блока.

Синтаксис для объявления переменных в VB.Net —

[ < attributelist > ] [ accessmodifier ] [[ Shared ] [ Shadows ] | [ Static ]]
[ ReadOnly ] Dim [ WithEvents ] variablelist

Куда,

  • attributetelist — это список атрибутов, которые применяются к переменной. Необязательный.

  • accessmodifier определяет уровни доступа к переменным, он имеет значения как — Public, Protected, Friend, Protected Friend и Private. Необязательный.

  • Shared объявляет общую переменную, которая не связана с каким-либо конкретным экземпляром класса или структуры, скорее доступна для всех экземпляров класса или структуры. Необязательный.

  • Тени указывают, что переменная повторно объявляет и скрывает элемент с одинаковым именем или набор перегруженных элементов в базовом классе. Необязательный.

  • Статический указывает, что переменная сохранит свое значение, даже если после завершения процедуры, в которой она объявлена. Необязательный.

  • ReadOnly означает, что переменная может быть прочитана, но не записана. Необязательный.

  • WithEvents указывает, что переменная используется для ответа на события, вызванные экземпляром, назначенным переменной. Необязательный.

  • Переменный список предоставляет список объявленных переменных.

attributetelist — это список атрибутов, которые применяются к переменной. Необязательный.

accessmodifier определяет уровни доступа к переменным, он имеет значения как — Public, Protected, Friend, Protected Friend и Private. Необязательный.

Shared объявляет общую переменную, которая не связана с каким-либо конкретным экземпляром класса или структуры, скорее доступна для всех экземпляров класса или структуры. Необязательный.

Тени указывают, что переменная повторно объявляет и скрывает элемент с одинаковым именем или набор перегруженных элементов в базовом классе. Необязательный.

Статический указывает, что переменная сохранит свое значение, даже если после завершения процедуры, в которой она объявлена. Необязательный.

ReadOnly означает, что переменная может быть прочитана, но не записана. Необязательный.

WithEvents указывает, что переменная используется для ответа на события, вызванные экземпляром, назначенным переменной. Необязательный.

Переменный список предоставляет список объявленных переменных.

Каждая переменная в списке переменных имеет следующий синтаксис и части —

variablename[ ( [ boundslist ] ) ] [ As [ New ] datatype ] [ = initializer ]

Куда,

  • имя переменной — это имя переменной

  • Boundslist — необязательно. Он предоставляет список границ каждого измерения переменной массива.

  • Новый — необязательно. Он создает новый экземпляр класса, когда выполняется оператор Dim.

  • Тип данных — Обязательный, если Option Strict включен. Он определяет тип данных переменной.

  • инициализатор — Необязательно, если Новый не указан. Выражение, которое оценивается и присваивается переменной при ее создании.

имя переменной — это имя переменной

Boundslist — необязательно. Он предоставляет список границ каждого измерения переменной массива.

Новый — необязательно. Он создает новый экземпляр класса, когда выполняется оператор Dim.

Тип данных — Обязательный, если Option Strict включен. Он определяет тип данных переменной.

инициализатор — Необязательно, если Новый не указан. Выражение, которое оценивается и присваивается переменной при ее создании.

Некоторые действительные объявления переменных вместе с их определением показаны здесь —

Dim StudentID As Integer
Dim StudentName As String
Dim Salary As Double
Dim count1, count2 As Integer
Dim status As Boolean
Dim exitButton As New System.Windows.Forms.Button
Dim lastTime, nextTime As Date

Инициализация переменных в VB.Net

Переменные инициализируются (присваиваются значения) со знаком равенства, за которым следует постоянное выражение. Общая форма инициализации —

variable_name = value;

например,

Dim pi As Double
pi = 3.14159

Вы можете инициализировать переменную во время объявления следующим образом:

Dim StudentID As Integer = 100
Dim StudentName As String = "Bill Smith"

пример

Попробуйте следующий пример, который использует различные типы переменных —

Live Demo

Module variablesNdataypes
   Sub Main()
      Dim a As Short
      Dim b As Integer
      Dim c As Double
      
      a = 10
      b = 20
      c = a + b
      Console.WriteLine("a = {0}, b = {1}, c = {2}", a, b, c)
      Console.ReadLine()
   End Sub
End Module

Когда приведенный выше код компилируется и выполняется, он дает следующий результат —

a = 10, b = 20, c = 30

Принятие значений от пользователя

Класс Console в пространстве имен System предоставляет функцию ReadLine для приема ввода от пользователя и сохранения его в переменной. Например,

Dim message As String
message = Console.ReadLine

Следующий пример демонстрирует это —

Live Demo

Module variablesNdataypes
   Sub Main()
      Dim message As String
      Console.Write("Enter message: ")
      message = Console.ReadLine
      Console.WriteLine()
      Console.WriteLine("Your Message: {0}", message)
      Console.ReadLine()
   End Sub
End Module

Когда приведенный выше код компилируется и выполняется, он дает следующий результат (предположим, что пользователь вводит Hello World) —

Enter message: Hello World   
Your Message: Hello World

Lvalues ​​и Rvalues

Есть два вида выражений —

  • lvalue — выражение, являющееся lvalue, может отображаться как слева или справа от присваивания.

  • rvalue — выражение, являющееся rvalue, может появляться справа, но не слева от присваивания.

lvalue — выражение, являющееся lvalue, может отображаться как слева или справа от присваивания.

rvalue — выражение, являющееся rvalue, может появляться справа, но не слева от присваивания.

Переменные являются lvalues ​​и могут отображаться в левой части назначения. Числовые литералы являются r-значениями, поэтому не могут быть назначены и не могут отображаться слева. Следующее является действительным утверждением —

Dim g As Integer = 20

Но следующее не является допустимым утверждением и может привести к ошибке во время компиляции —