VB.NET的dim语句的区别

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB.NET的dim语句的区别相关的知识,希望对你有一定的参考价值。

1.Dim a As DataSet = New DataSet
2.Dim a As New DataSet
3.Dim a = New DataSet
1,2,3有什么区别

完全一样的。
kyd300说:3不规范,a类型默认会是OBJECT类型然后赋值,如果C#项目肯定报错,因为VB项目“默认开启隐式转换”
他的说法是错误的
Dim a = New DataSet
并不会造成隐式转换,这是利用Visual Basic中的类型推断功能,等价于C# 中 var a = new DataSet();
参考技术A 1.Dim a As DataSet = New DataSet <=> 2.Dim a As New DataSet <=> 3.Dim a = New DataSet <=> Dim a As Object = New DataSet

都是声明一个DataSet名为a ,然后初始化 , 效果一样
参考技术B 1=2 完全一样,2是1的简单方式而已。。

3不规范,a类型默认会是OBJECT类型然后赋值,如果C#项目肯定报错,因为VB项目“默认开启隐式转换”

所以建议楼主使用1或2种方法。
参考技术C 差不多

在VB.NET中do while和while有啥区别?

【中文标题】在VB.NET中do while和while有啥区别?【英文标题】:Whats the difference between do while and while in VB.NET?在VB.NET中do while和while有什么区别? 【发布时间】:2013-04-10 02:29:53 【问题描述】:

Do While 语句是循环块中的第一行,与 VB.NET 中的单个 While 有什么区别?

它们似乎没有提供任何行为差异。

【问题讨论】:

没有区别。一个是出于遗留原因。 BASIC 是一种非常古老的语言,而 Vb.Net 仍然带有一些包袱,例如Mid(MyStr, 2) = "Hi"想猜猜这是做什么的? 【参考方案1】:

在 Visual Basic 中这些是相同的:

    Dim foo As Boolean = True

    While Not foo
        Debug.WriteLine("!")
    End While

    Do While Not foo
        Debug.WriteLine("*")
    Loop

这些不是; do 执行一次:

    Dim foo As Boolean = True

    While Not foo
        Debug.WriteLine("!")
    End While

    Do
        Debug.WriteLine("*")
    Loop While Not foo

【讨论】:

为了完整起见:Do While Not … 可以写成Do Until 老实说,我积极避免Do Until。我也看到人们可能会不小心将无限循环扔到生产代码中。 太好了,这就是我想要的解释。 我一直使用“直到”。从来没有遇到过无限循环的问题。您只需要确保在循环期间更新正在测试的变量。如果人们将无限循环放入生产代码中,那么他们就没有正确地对其进行测试。【参考方案2】:

DO...WHILE中,循环内的代码至少执行一次

WHILE循环中,循环内的代码被执行0次或多次

【讨论】:

【参考方案3】:

Do While 首先执行,然后检查是否有效。 While 先检查后执行。

while (1!=1) echo 1 

什么都不输出

但是

doecho 1 while (1!=1) 

将输出 1 一次。

【讨论】:

我不是在问 do while 和 while end while 之间的区别。我说的是 do while 。 在 C# AFAIK 中没有 do while 这样的事情 不,不是,DO WHILE 在同一行,块在下面。 可以,但是逻辑是一样的。 这是 VB 问题还是 C# 问题。

以上是关于VB.NET的dim语句的区别的主要内容,如果未能解决你的问题,请参考以下文章

property语句在vb.net中怎么用

在VB.NET中do while和while有啥区别?

SQL插入语句语法错误VB.net

VB.Net 中的 SQL 语句错误

如何在 VB.Net 的虚拟键语句中使用变量

VB .NET OleDbCommand 在 SQL 语句末尾返回缺少分号 (;)