 |
|
[VB]อยากให้ข้อมูลใน array คละกัน เรียงกันใหม่ แบบสุ่ม ทำได้รึเปล่าครับ |
|
 |
|
|
 |
 |
|
สมมุติ ว่า a(10) = {1,2,3,4,5,6,7,8,9,10}
ผมอยากให้ตัวแปรมันสลับที่กันแบบสุ่ม เช่น พอคลิกปุ่มนี้จะ สุ่มใหม่ ค่าใน array จะสลับตำแแหน่งกัน
มีคำสั่งไหนรึเปล่าครับ รึต้องเขียนเอง
Tag : .NET, VS 2010 (.NET 4.x)
|
|
 |
 |
 |
 |
Date :
2014-10-28 10:41:48 |
By :
111111 |
View :
1260 |
Reply :
4 |
|
 |
 |
 |
 |
|
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Window Application Code (C#)
int[] a = { 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 };
a = a.AsEnumerable().OrderBy(x => Guid.NewGuid()).ToArray();
ถ้าใช้ VB ไปลองแปลงเป็น VB ดูนะครับ 
|
ประวัติการแก้ไข 2014-10-28 12:20:00
 |
 |
 |
 |
Date :
2014-10-28 12:19:15 |
By :
01000010 |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
Code (VB.NET)
Dim MyArray() As Integer : MyArray = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}
Dim ShuffleArray = MyArray.Shuffle()
ExtensionMethods.vb
Imports System.Runtime.CompilerServices
Module ExtensionMethods
<Extension()>
Public Function Shuffle(ByVal myArray As Array) As Object()
Dim rnd As New Random
Dim MyRandomArray = myArray.OfType(Of Object).OrderBy(Function() rnd.Next)
Return MyRandomArray.ToArray()
End Function
End Module
|
 |
 |
 |
 |
Date :
2014-10-28 12:30:20 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
 |
|
|
 |
 |
|
แก้เล็กๆ เพื่อความสวยงาม
ExtensionMethods.vb
Imports System.Runtime.CompilerServices
Module ExtensionMethods
<Extension()> _
Public Function Shuffle(Of T)(MyArray As T()) As T()
Dim rnd As New Random
Dim MyRandomArray = MyArray.OrderBy(Function() rnd.Next)
Return MyRandomArray.ToArray()
End Function
End Module
|
 |
 |
 |
 |
Date :
2014-10-28 13:13:23 |
By :
ห้ามตอบเกินวันละ 2 กระทู้ |
|
 |
 |
 |
 |
|
|
 |
 |
|
 |
 |
|
|