Tuple<T1,T2>.Item2 Properti
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.
Mendapatkan nilai komponen kedua objek saat ini Tuple<T1,T2> .
public:
property T2 Item2 { T2 get(); };
public T2 Item2 { get; }
member this.Item2 : 'T2
Public ReadOnly Property Item2 As T2
Nilai Properti
Nilai komponen kedua objek saat ini Tuple<T1,T2> .
Contoh
Contoh ini mengilustrasikan penggunaan Item1 properti dan Item2 untuk menentukan metode yang mengembalikan beberapa nilai dalam bentuk 2 tuple.
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
Keterangan
Anda dapat menentukan jenis Item2 komponen secara dinamis dengan salah satu dari dua cara:
Dengan memanggil
GetTypemetode pada nilai yang dikembalikan oleh Item2 properti .Dengan mengambil Type objek yang mewakili Tuple<T1,T2> objek, dan mengambil elemen kedua dari array yang dikembalikan oleh metodenya Type.GetGenericArguments .