我的任务是将字符串大小写转换为小写或大写字母,然后将它们交换成圆形.
例如: – 输入: – “HeLlO”和输出: – “hElLo”
我知道我需要使用for循环但是无法弄清楚如何逐步浏览每个字符,检查案例并在需要时切换它.
我可以创建一个循环计数并显示单个字符或一个简单的If语句将整个字符串转换为Upper或更低但是如果我尝试组合2我的逻辑不能正常工作.
任何人都可以帮忙吗?
解决方法 这是一个简单的方法:Public Function InvertCase(@R_403_5983@ As String) As String Dim output As New StringBuilder() For Each i As Char In @R_403_5983@ If Char.IsLower(i) Then output.Append(Char.toupper(i)) ElseIf Char.IsUpper(i) Then output.Append(Char.Tolower(i)) Else output.Append(i) End If Next Return output.ToString()End Function
它只是循环遍历原始字符串中的每个字符,检查它是什么情况,修复它,然后将该固定字符附加到新字符串(通过StringBuilder对象).
正如Neolisk在下面的评论中所建议的那样,您可以通过创建另一个转换单个字符的方法来使其更清晰,如下所示:
Public Function InvertCase(@R_403_5983@ As Char) As Char If Char.IsLower(@R_403_5983@) Then Return Char.toupper(@R_403_5983@) If Char.IsUpper(@R_403_5983@) Then Return Char.Tolower(@R_403_5983@) Return @R_403_5983@End FunctionPublic Function InvertCase(@R_403_5983@ As String) As String Dim output As New StringBuilder() For Each i As Char In @R_403_5983@ output.Append(InvertCase(i)) Next Return output.ToString()End Function
对InvertCase(Char)使用相同的函数,您也可以使用liNQ,如下所示:
Public Function InvertCase(@R_403_5983@ As String) As String Return New String(@R_403_5983@.Select(Function(i) InvertCase(i)).ToArray())End Function总结
以上是内存溢出为你收集整理的将字符从低位转换为大写,反之亦然VB.Net全部内容,希望文章能够帮你解决将字符从低位转换为大写,反之亦然VB.Net所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)