首頁 > 後端開發 > C#.Net教程 > C# 中的反轉字串

C# 中的反轉字串

PHPz
發布: 2024-09-03 15:35:25
原創
954 人瀏覽過

Reverse 用於從後到前反轉字串或數字,就像字串 educba 一樣,反轉字串是 abcude。對於數字 9436 反轉為 6349。借助反轉字串,我們可以反轉任何字串。我們可以透過多種方式來實現這個方法。每個方法都有它的log(n)。有些方法比其他方法更快。

有些方法使用更多行程式碼並且本質上很複雜,有時很難理解。我們還可以反轉數字。

方法

這裡有一些方法,透過使用它們我們可以反轉字串:

  • 使用 ReverseString 方法。
  • 使用 ToCharArray 方法。
  • 程式設計方法:透過先使用此方法,我們將字串儲存在任何變數中,然後計算該變數或字串的長度。然後我們一次選擇一個字符,可以從背面或反面開始列印。在使用這種方法之前,我們應該確保這種方法不會影響程式的效能。

所以我們可以根據需要使用上述任何一種方法。

C# 中反向字串的範例

下面給出了 C# 中反向字串的範例:

範例#1

代碼:

using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
namespace ReverseString
{
class Program
{
static void Main(string[] args)
{
string Str, rev;
Str = "Programming" ;
rev = "";
Console.WriteLine("Value of given String is: {0}", Str) ;
// find string length
int a;
a = Str.Length - 1 ;
while (a >= 0)
{
rev = rev + Str[a] ;
a--;
}
Console.WriteLine("Reversed string is: {0}", rev) ;
Console.ReadLine() ;
}
}
}
登入後複製

在上面的程式中,Str 被用作變數來儲存字串的值。 while循環用於反轉字串,背後的邏輯是從右到左逐個改變字元的位置。
輸出:

C# 中的反轉字串

範例#2

代碼:

using System ;
using System.Collections.Generic;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
static class StringHelper
{
public static string ReverseString(string str)
{
char[] array = str.ToCharArray() ;
Array.Reverse(array) ;
return new string(array) ;
}
}
class Program
{
static void Main()
{
Console.WriteLine(StringHelper.ReverseString("This")) ;
Console.WriteLine(StringHelper.ReverseString("is")) ;
Console.WriteLine(StringHelper.ReverseString("C#")) ;
Console.WriteLine(StringHelper.ReverseString("programming")) ;
Console.ReadLine();
}
}
登入後複製

上面的範例中,ReverseString方法用來取得需要反轉Array的字串值。反轉用於修改字元的順序。

輸出:

C# 中的反轉字串

範例 #3

代碼:

using System;
using System.Collections.Generic ;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
namespace reverseString
{
class Program
{
static void Main(string[] args)
{
string s = "", rev = "" ;
int len = 0 ;
Console.WriteLine("Enter a string") ;
s = Console.ReadLine();
len = s.Length - 1;
while (len >= 0)
{
rev = rev + s[len] ;
len--;
}
Console.WriteLine("Reverse of string is {0}", rev) ;
Console.ReadLine();
}
}
}
登入後複製

在上面的程式中,我們接受使用者的輸入來反轉字串。變數用於儲存字串的值。 while循環用於反轉字串,背後的邏輯是從右到左逐個改變字元的位置。

輸出:

C# 中的反轉字串

範例#4

代碼:

using System;
using System.Collections.Generic ;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
namespace reverseString
{
class Program
{
static void Main(string[] args)
{
string s;
Console.Write(" Enter the string : ") ;
s = Console.ReadLine();
s = StringReverse(s);
Console.Write(" Reverse is : ") ;
Console.Write(s) ;
Console.ReadLine() ;
}
public static string StringReverse(string s)
{
if (s.Length > 0)
return s[s.Length - 1] + StringReverse(s.Substring(0, s.Length - 1)) ;
else
return s ;
}
}
}
登入後複製

輸出:

C# 中的反轉字串

範例#5

代碼:

using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
namespace reverseString
{
class Program
{
public static void Main()
{
Console.WriteLine(reverse("Hello")) ;
Console.ReadLine();
}
public static string reverse(string s)
{
string reverseStr = "" ;
for (int a = s.Length - 1; a >= 0; a--)
{
reverseStr = reverseStr + s[a] ;
}
return reverseStr ;
}
}
}
登入後複製

在上面的範例中,for迴圈用於反轉給定的字串。

輸出:

C# 中的反轉字串

範例 #6

代碼:

using System ;
using System.Collections.Generic ;
using System.Linq ;
using System.Text ;
using System.Threading.Tasks ;
namespace reverseString
{
class Program
{
public static void Main()
{
string s;
Console.WriteLine("The value of given string is ") ;
s = Console.ReadLine() ;
char[] array = s.ToCharArray() ;
Array.Reverse(array);
Console.WriteLine(new String(array)) ;
Console.ReadLine() ;
}
}
}
登入後複製

輸出:

C# 中的反轉字串

結論

因此我們可以透過使用方法的數量來反轉任何給定的字串或數字。但我們應該確保我們的選擇不會影響效能,因為每種方法都有自己的時間複雜度。

以上是C# 中的反轉字串的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板