Länge einer Methode in VB.NET
-
11-12-2019 - |
Frage
Wie funktioniert VB.NET berechnen Sie die Länge einer Methode?Wie kann ich das in C # machen?
Das ist mein VB.NET Codes:
Private Function ZeroPad(ByRef pNumber As Integer, ByRef pLength As Integer) As String
Dim Padding As Object
If IsNumeric(pNumber) And IsNumeric(pLength) Then
Padding = New String("0", pLength)
ZeroPad = Padding & CStr(pNumber)
ZeroPad = Right(ZeroPad, pLength)
Else
ZeroPad = CStr(pNumber)
End If
End Function
Ich habe wie folgt in C # konvertiert:
private string ZeroPad(ref int pNumber, ref int pLength) {
object Padding;
if ((IsNumeric(pNumber) && IsNumeric(pLength))) {
Padding = new string("0", pLength);
return (Padding + pNumber.ToString());
ZeroPad = ZeroPad.Substring((ZeroPad.Length - pLength));
// In the above line, how can I take the length of a method in C#?
}
else {
return pNumber.ToString();
}
}
Lösung
Sie sind wahrscheinlich verwirrt zwischen der Variablen ZeroPad
und die Methode ZeroPad
.Es ist üblich, Variablennamen mit einem Kleinbuchstaben-Anfangszeichen zu schreiben, z.B. zeroPad
.Um einen Wert von einer Methode zurückzugeben, verwenden Sie return
in Deutsch.Ich bin mir nicht sicher, was der Zweck von dir ist IsNumeric
unterprogramm oder warum Sie Wert als Referenz nehmen, aber Ihr Code in C # wäre ähnlich wie:
private string ZeroPad(ref int pNumber, ref int pLength)
{
string padding;
string zeroPad;
if ((IsNumeric(pNumber) && IsNumeric(pLength)))
{
padding = new string('0', pLength);
zeroPad = (padding + pNumber.ToString());
zeroPad = zeroPad.Substring((zeroPad.Length - pLength));
}
else
{
zeroPad = pNumber.ToString();
}
return zeroPad;
}
Da Sie die Werte von nicht ändern pNumber
oder pLength
, Sie können sie nach Wert übergeben (ByVal
b. in Visual Basic).Und zu wissen, dass beide pNumber
und pLength
sind ganze Zahlen und daher immer numerisch, könnte Ihre Methode wie folgt abgekürzt werden:
private string ZeroPad(int pNumber, int pLength)
{
string zeroPad;
string padding = new string('0', pLength);
zeroPad = (padding + pNumber.ToString());
zeroPad = zeroPad.Substring(zeroPad.Length - pLength);
return zeroPad;
}
Die Basisklassenbibliotheken des .NET-Frameworks verfügen über eine Zeichenfolge.PadRight methode, die genau das tut, was Sie wollen, wenn Sie angeben '0'
als Wert für paddingChar
.
Andere Tipps
in c #, wenden Sie sich nicht dem Methodennamen.Stattdessen verwenden Sie eine "Return" -Anweisung.Deklarieren Sie eine Variable: generasacodicetagpre.
und statt generasacodicetagpre.
Verwendung: generasacodicetagpre.
und endlich retval: generasacodicetagpre.