質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.50%
VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

Q&A

解決済

1回答

1701閲覧

VB.netでリストのソートについて

退会済みユーザー

退会済みユーザー

総合スコア0

VB.NET

Microsoft Visual Basic .NETのことで、Microsoft Visual Basic(VB6)の後継。 .NET環境向けのプログラムを開発することができます。 現在のVB.NETでは、.NET Frameworkを利用して開発を行うことが可能です。

0グッド

0クリップ

投稿2019/08/04 13:46

お久しぶりです reaです
最近 よくリストを使う機会が増えているのですが、分からない場所にぶつかりまして。。
お力を貸していただけないでしょうか。。。
以下ソースコードです

'変数
Private TestList As List(Of Master)
'クラス
Public Class Master
Private UserName As String

Public Property _UserName コード As String Get Return UserName End Get Set(ByVal Value As String) UserName = Value End Set End Property Private UserNo As Integer Public Property _UserNo As Integer Get Return UserNo End Get Set(ByVal Value As Integer) UserNo = Value End Set End Property Public Sub New(ByVal User As String, ByVal No As Integer) '値セット _UserName = User _UserNo = No End Sub Public Sub New() '初期化 __UserName = "" _UserNo = 0 End Sub

End Class

’ロードイベント内

Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load

     '追加
TestList = New List(Of Master)
TestList.Add(New Master("User_A", 1))
TestList.Add(New Master("User_B", 4))
TestList.Add(New Master("User_C", 2))
TestList.Add(New Master("User_D", 3))



End Sub

上記のリストをUserNoの若い順にリスト内をソートしたいのですが、どなたかお力をお貸し頂けると助かります
宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

ググればすぐ見つかりますが、調べたりされないんでしょうか。
Listの要素を並べ替えるには?[C#/VB]

投稿2019/08/04 13:54

gentaro

総合スコア8949

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

退会済みユーザー

退会済みユーザー

2019/08/04 14:15

クラスのプロパティ内のUserNoでのソートの仕方が分からないのです、、
gentaro

2019/08/04 14:28

LINQの例に書いてあるし、その説明でわかりにくいとしてもググればいくらでも説明は出てきますよ。 https://teratail.com/help/question-tips#questionTips1-2 ここに「投稿前に検索し、できるところまで自分でやってみましょう」と書かれている通り、まず調べてわからないポイントを聞くのが筋なんで、ググってみてください。
退会済みユーザー

退会済みユーザー

2019/08/04 14:34 編集

色々調べた上で分からなかったので質問しているのですが、、、 LinQも最近SQLを使い始めたなかで知ったものなので、まだ良く分かっていないのです。
gentaro

2019/08/04 14:37

それであれば、最初から調べた内容を挙げて理解できなかったポイントを質問されると良いのでは。 回答者はあなたが何を既に調べていて、どの部分で躓いたのかわからないので。
退会済みユーザー

退会済みユーザー

2019/08/04 14:42

そうかもしれませんね 自分の配慮不足でした
Zuishin

2019/08/04 14:52

今や LINQ は基礎になりました。List<T>.Sort(Comparison<T>) でもこの質問は解決できますが、この機会に LINQ を使えるようになっておくのが良いと思います。
退会済みユーザー

退会済みユーザー

2019/08/04 14:59 編集

ありがとうございます。 最近Linqのクエリでの検索方法等を知りまして、簡単な検索時にForでのループをする必要がなくなるので、とても便利だと感じたのが記憶に新しいです この機に色々とLinqについても覚えていきたいと思います 質問内容に関しては TestList.Sort(Function(a,b) a.UserNo - b.UserNo)にて解決致しました ありがとうございました
gentaro

2019/08/04 15:01

もしLINQでやるなら Dim sorted = TestList.OrderBy(Function(x) x._UserNo) で sorted がお望みのものになりますが、IOrderedEnumerable(Of Master) 型になってるので、必要ならToList()するなりなんなり。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.50%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問