扫二维码与项目经理沟通
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流
用自定义类型数组处理:
成都创新互联专注为客户提供全方位的互联网综合服务,包含不限于做网站、成都网站设计、岳塘网络推广、微信平台小程序开发、岳塘网络营销、岳塘企业策划、岳塘品牌公关、搜索引擎seo、人物专访、企业宣传片、企业代运营等,从售前售中售后,我们都将竭诚为您服务,您的肯定,是我们最大的嘉奖;成都创新互联为所有大学生创业者提供岳塘建站搭建服务,24小时服务热线:13518219792,官方网址:www.cdcxhl.com
Private Structure PhoneBook
Dim ID As Integer
Dim name As String
Dim sex As Boolean
Dim phone As String
Dim email As String
Dim group As String '这里也可以设置为整数型,用序号来代表各个组
End Structure
Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
Dim PBook() As PhoneBook, tmpstr() As String, iCount As Integer = 0
Dim str As IO.StreamReader = New IO.StreamReader("C:\1.txt", System.Text.Encoding.Default)
Do Until str.EndOfStream
tmpstr = Split(str.ReadLine(), ",")
If tmpstr.Length = 6 Then
ReDim Preserve PBook(iCount)
PBook(iCount).ID = CInt(tmpstr(0))
PBook(iCount).name = tmpstr(1)
If tmpstr(2) = "男" Then PBook(iCount).sex = True Else PBook(iCount).sex = False
PBook(iCount).phone = tmpstr(3)
PBook(iCount).email = tmpstr(4)
PBook(iCount).group = tmpstr(5)
iCount += 1
End If
Loop
str.Close()
End Sub
Dim Str(20) As String '20数据元素
Dim Text(20) As TextBox
Dim n As Integer = 0
For Each i In Text
i = New TextBox '实例化
i.Location = New Point(50, n * 20)
Me.Controls.Add(i) '添加窗体
Dim Index As Integer = i.TabIndex '没index属性
Str(n) = Index
i.Text = Str(n) 'str数组值赋值给文本框
n += 1
Next
vb.net和vb6.0不同,无法直接使用控件数组。不过可以通过其他方式变通一下。
比如现在有10个label,要将这10个label的text属性统一设置为“这是第X个标签”(X为1-10)。
1.建立10个label,名称分别为label1、label2、label3。。label10
2.代码:
For i = 1 To 10
Me.FindControl("label" i).Text = "这是第" i “个标签”
Next i
关键点是Me.FindControl()的方法,在代码中Me.FindControl("label1").text与label1.text是一样的。
VB中动态阵列与静态阵列的区别 ?
VB中动态阵列就可以在任何时候改变大小,静态阵列只能够预先设定大小,过度使用这种方法,会导致记忆体的操作环境变慢。
Visual Basic 中有两种型别的阵列:固定大小的阵列 — 它总是保持同样的大小,以及在执行时大小可以改变的动态阵列。
在 Visual Basic 中,动态阵列最灵活、最方便,有助于有效管理记忆体。例如,可短时间使用一个大阵列,然后,在不使用这个阵列时,将记忆体空间释放给系统。
如果不用动态阵列,就要宣告一个数组,它的大小尽可能达到最大,然后再抹去那些不必要的元素。但是,如果过度使用这种方法,会导致记忆体的操作环境变慢。
vb中静态阵列和动态阵列的区别
静态在编译期间就确定空间,分配了记忆体空间;
动态是执行时才分配的
动态阵列跟静态阵列的区别?
动态阵列是在程式执行时建立的,可以根据使用者需要,有效利用储存空间:int *h=new int[10];静态阵列在宣告时就已经确定大小的阵列,即阵列元素的个数固定不变:int h[10];
java中动态阵列和静态阵列的区别
静态阵列是存在与内有中的方法区,普通阵列存在方法中,方法结束阵列不存在,前者方法结束,阵列仍存在并可呼叫
静态阵列与动态阵列
Private Sub Command1_Click()
Dim arrA(2), arrB()
arrA(1) = "111"
arrA(2) = "222"
MsgBox arrA(1)
ReDim arrB(3)
arrB(1) = "aaa"
arrB(2) = "bbb"
arrB(3) = "c"
MsgBox (arrB(3))
ReDim Preserve arrB(5)
arrB(4) = "XXX"
arrB(5) = "YYY"
MsgBox arrB(1) vbCrLf arrB(5)
End Sub
'上面示例中,arrA(2)即为静态阵列,arrB()为动态阵列。
'静态阵列不能改变大小,只有动态阵列的大小能够改变,即所看到的Redim语句。
C++静态阵列和动态阵列
int a[10];静态阵列
int *p;
p=(int *)new(sizeof(int)*10);动态阵列
static表示静态变数
用在函式中表示退出函式时该阵列不删除
下次再进入函式仍是上次退出函式时的值
C语言中静态阵列与动态阵列
c是一个int指标变数,这个变数储存了一个地址,c+i也是一个int指标,和c相比偏移了i个int大小(一般4或8位元组)
c[i]是c+i处的int变数,等价于*(c+i)
阵列的名字就是阵列的名字,
如何把静态阵列的值赋给动态阵列
个人认为用vector容器更好,完全可以代替阵列:
---------------------------------------------------------------------------
#include iostream
#include vector
using namespace std;
int main(int argc, char* argv[])
{
static int a[5]={1,2,3,4,5};
vectorint b;
for (int i=0; i5; i++) {
b.push_back(a[i]);将静态阵列a中的元素储存到容器b中
}
for (size_t i=0; i!=b.size(); i++) {
coutb[i]endl;输出容器b中的元素
}
return 0;
}
---------------------------------------------------------------------------
静态阵列和动态阵列有什么区别?
Integer.parseInt() 方法的引数是一个字串,而不是一个字串阵列,
返回值是整形,而不是整形阵列。
你要将args数组里的元素转换成存到a1里面,
这么写好了
if(args==null)return;
int[] a1= new int[args.length];
for(int i=0;iargs.length;i++){
a1[i]=Integer.parseInt(args[i]);
}
java的静态阵列和动态阵列有什么区别?
静态阵列根本不能满足我们程式设计的实际需要,比方说我需要在程式执行过程中动态的向阵列中新增资料,这时我们的静态阵列大小是固定的,显然就不能新增资料,要动态新增资料必须要用到动态阵列,动态阵列中的各个元素型别也是一致的。具有容量扩充性,同步性和资料操作效率等特点!
Option Explicit
Option Base 1
Private Function Search(ByVal target As Long, ByRef arr() As Long, ByRef index1 As Long, ByRef index2 As Long) As Boolean
For index1 = LBound(arr, 1) To UBound(arr, 1)
For index2 = LBound(arr, 2) To UBound(arr, 2)
If arr(index1, index2) = target Then
Exit For
End If
Next
If index2 = UBound(arr, 2) Then Exit For
Next
Search = (index1 = UBound(arr, 1))
End Function
Private Sub Form_Load()
On Error Resume Next
Dim arr(3, 6) As Long
Dim i As Long, j As Long, k As Long
For i = LBound(arr) To UBound(arr)
For j = LBound(arr, 2) To UBound(arr, 2)
arr(i, j) = (j - 1) * 3 + i
Next
Next
k = Val(InputBox("请输入需查找的值", "输入", 0))
'找到了
If Search(k, arr, i, j) Then
MsgBox "第" i "行 第" j "列"
Else
MsgBox "没找到"
End If
End Sub
我们在微信上24小时期待你的声音
解答本文疑问/技术咨询/运营咨询/技术建议/互联网交流