IComparer<T>.Compare(T, T) Metode
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Membandingkan dua objek dan mengembalikan nilai yang menunjukkan apakah satu kurang dari, sama dengan, atau lebih besar dari yang lain.
public:
int Compare(T x, T y);
public int Compare (T x, T y);
public int Compare (T? x, T? y);
abstract member Compare : 'T * 'T -> int
Public Function Compare (x As T, y As T) As Integer
Parameter
- x
- T
Objek pertama yang dibandingkan.
- y
- T
Objek kedua untuk dibandingkan.
Mengembalikan
Bilangan bulat bertanda tangan yang menunjukkan nilai x
relatif dan y
, seperti yang diperlihatkan dalam tabel berikut.
Nilai | Makna |
---|---|
Kurang dari nol | x kurang dari y .
|
Nol | x sama dengan y .
|
Lebih besar dari nol | x lebih besar dari y .
|
Contoh
Contoh berikut mengimplementasikan IComparer<T> antarmuka untuk membandingkan objek jenis Box
sesuai dengan dimensinya. Contoh ini adalah bagian dari contoh yang lebih besar yang disediakan untuk Comparer<T> kelas .
// This class is not demonstrated in the Main method
// and is provided only to show how to implement
// the interface. It is recommended to derive
// from Comparer<T> instead of implementing IComparer<T>.
public class BoxComp : IComparer<Box>
{
// Compares by Height, Length, and Width.
public int Compare(Box x, Box y)
{
if (x.Height.CompareTo(y.Height) != 0)
{
return x.Height.CompareTo(y.Height);
}
else if (x.Length.CompareTo(y.Length) != 0)
{
return x.Length.CompareTo(y.Length);
}
else if (x.Width.CompareTo(y.Width) != 0)
{
return x.Width.CompareTo(y.Width);
}
else
{
return 0;
}
}
}
' This class is not demonstrated in the Main method
' and is provided only to show how to implement
' the interface. It is recommended to derive
' from Comparer<T> instead of implementing IComparer<T>.
Public Class BoxComp
Implements IComparer(Of Box)
' Compares by Height, Length, and Width.
Public Function Compare(ByVal x As Box, ByVal y As Box) As Integer Implements _
IComparer(Of Box).Compare
If x.Height.CompareTo(y.Height) <> 0 Then
Return x.Height.CompareTo(y.Height)
ElseIf x.Length.CompareTo(y.Length) <> 0 Then
Return x.Length.CompareTo(y.Length)
ElseIf x.Width.CompareTo(y.Width) <> 0 Then
Return x.Width.CompareTo(y.Width)
Else
Return 0
End If
End Function
End Class
Keterangan
Terapkan metode ini untuk menyediakan perbandingan urutan pengurutan yang disesuaikan untuk jenis T
.
Membandingkan null
dengan jenis referensi apa pun diizinkan dan tidak menghasilkan pengecualian. Referensi null dianggap kurang dari referensi apa pun yang bukan null.
Berlaku untuk
Lihat juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk