Tuple<T1,T2>.Item2 Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Geçerli Tuple<T1,T2> nesnenin ikinci bileşeninin değerini alır.
public:
property T2 Item2 { T2 get(); };
public T2 Item2 { get; }
member this.Item2 : 'T2
Public ReadOnly Property Item2 As T2
Özellik Değeri
- T2
Geçerli Tuple<T1,T2> nesnenin ikinci bileşeninin değeri.
Örnekler
Örnekte, 2 tanımlama grubu biçiminde birden çok değer döndüren bir yöntem tanımlamak için ve Item2 özelliklerinin kullanımı Item1 gösterilmektedir.
using System;
public class Class1
{
public static void Main()
{
int dividend, divisor;
Tuple<int, int> result;
dividend = 136945; divisor = 178;
result = IntegerDivide(dividend, divisor);
if (result != null)
Console.WriteLine(@"{0} \ {1} = {2}, remainder {3}",
dividend, divisor, result.Item1, result.Item2);
else
Console.WriteLine(@"{0} \ {1} = <Error>", dividend, divisor);
dividend = Int32.MaxValue; divisor = -2073;
result = IntegerDivide(dividend, divisor);
if (result != null)
Console.WriteLine(@"{0} \ {1} = {2}, remainder {3}",
dividend, divisor, result.Item1, result.Item2);
else
Console.WriteLine(@"{0} \ {1} = <Error>", dividend, divisor);
}
private static Tuple<int, int> IntegerDivide(int dividend, int divisor)
{
try {
int remainder;
int quotient = Math.DivRem(dividend, divisor, out remainder);
return new Tuple<int, int>(quotient, remainder);
}
catch (DivideByZeroException) {
return null;
}
}
}
// The example displays the following output:
// 136945 \ 178 = 769, remainder 63
// 2147483647 \ -2073 = -1035930, remainder 757
open System
let integerDivide (dividend: int) divisor =
try
let quotient, remainder = Math.DivRem(dividend, divisor)
Tuple<int, int>(quotient, remainder)
with :? DivideByZeroException ->
Unchecked.defaultof<Tuple<int, int>>
[<EntryPoint>]
let main _ =
let dividend = 136945
let divisor = 178
let result = integerDivide dividend divisor
if box result <> null then
printfn $@"{dividend} \ {divisor} = {result.Item1}, remainder {result.Item2}"
else
printfn $@"{dividend} \ {divisor} = <Error>"
let dividend = Int32.MaxValue
let divisor = -2073
let result = integerDivide dividend divisor
if box result <> null then
printfn $@"{dividend} \ {divisor} = {result.Item1}, remainder {result.Item2}"
else
printfn $@"{dividend} \ {divisor} = <Error>"
0
// The example displays the following output:
// 136945 \ 178 = 769, remainder 63
// 2147483647 \ -2073 = -1035930, remainder 757
Module modMain
Public Sub Main()
Dim dividend, divisor As Integer
Dim result As Tuple(Of Integer, Integer)
dividend = 136945 : divisor = 178
result = IntegerDivide(dividend, divisor)
If result IsNot Nothing Then
Console.WriteLine("{0} \ {1} = {2}, remainder {3}",
dividend, divisor, result.Item1, result.Item2)
Else
Console.WriteLine("{0} \ {1} = <Error>", dividend, divisor)
End If
dividend = Int32.MaxValue : divisor = -2073
result = IntegerDivide(dividend, divisor)
If result IsNot Nothing Then
Console.WriteLine("{0} \ {1} = {2}, remainder {3}",
dividend, divisor, result.Item1, result.Item2)
Else
Console.WriteLine("{0} \ {1} = <Error>", dividend, divisor)
End If
End Sub
Private Function IntegerDivide(dividend As Integer, divisor As Integer) As Tuple(Of Integer, Integer)
Try
Dim remainder As Integer
Dim quotient As Integer = Math.DivRem(dividend, divisor, remainder)
Return New Tuple(Of Integer, Integer)(quotient, remainder)
Catch e As DivideByZeroException
Return Nothing
End Try
End Function
End Module
' The example displays the following output:
' 136945 \ 178 = 769, remainder 63
' 2147483647 \ -2073 = -1035930, remainder 757
Açıklamalar
Bileşenin türünü Item2 dinamik olarak iki yoldan biriyle belirleyebilirsiniz:
özelliği tarafından döndürülen değerde yöntemini çağırarak
GetType
Item2 .nesnesini temsil Tuple<T1,T2> eden nesneyi alarak Type ve yöntemi tarafından Type.GetGenericArguments döndürülen diziden ikinci öğeyi alarak.