我是个.net萌新,在大学是计算机应用专业 学的比较杂 出来准备走net方向  培训了两个月了

今天被出了一道上机题  题本来是挺简单的  输入一个字符 如果是大写则转换为小写  如果是小写则转换为大写

难点在于后来我们自发的延伸  并且发现网上也没有针对这种情况的解决方案

所以我自己写了一个应对这种方法了类  发上来给大家共享下  比自带的转化方法更无脑一键一点 而且可以针对于大小写混合则字符串

如ASDFasf$%#%^645765127aAFSAasdfasd

这种情况  要把里面的大写转换为小写 并且把小写转换为大写 就显得很复杂了

虽然不是很实用 但是在网上搜了一下发现竟然有很多人在找  但是网上并没有什么简单的方法

所以写了一个转换 能够适应任何混合的大小写互相转换 并且在测试中没有发现任何bug

虽然不知道有多少地方能用上 但是既然百度上那么多人想要  就共享下吧

————其实重要的是想给同样是新人的人分享一下编程思路

 class Subna
{
private static char[] x = { 'Q', 'W', 'E', 'R', 'T', 'Y', 'U', 'I', 'O', 'P', 'A', 'S', 'D', 'F', 'G', 'H', 'J', 'K', 'L', 'Z', 'X', 'C', 'V', 'B', 'N', 'M' };
private static char[] o = { 'q', 'w', 'e', 'r', 't', 'y', 'u', 'i', 'o', 'p', 'a', 's', 'd', 'f', 'g', 'h', 'j', 'k', 'l', 'z', 'x', 'c', 'v', 'b', 'n', 'm' }; public static string getResult(string zz)
{ StringBuilder de = new StringBuilder();
string zi = zz;
for (int i = ; i < zi.Length; i++)
{
int bol = Array.IndexOf(x, zi[i]);
if (bol == -)
{
int bol2 = Array.IndexOf(o, zi[i]);
if (bol2 == -)
{
de.Append(zi[i]);
continue;
}
else
{
for (int da = ; da < o.Length; da++)
{
if (o[da] == zi[i])
{
de.Append(x[da]);
break;
}
}
}
}
else
{
for (int da = ; da < x.Length; da++)
{
if (x[da] == zi[i])
{
de.Append(o[da]);
break;
}
}
}
} return de.ToString(); } }

这是我已经封装好的类

是静态方法 只用调用传参就行了

Console.WriteLine("\n请输入需要转换大小写的字符串:");
string zi = Console.ReadLine();
string de = zi.ToUpper();
Console.WriteLine("\n转换大小写后为:{0}", de);

一键调用 混合转换 希望能给同样的萌新一些学习上的便利

给新人备注:没有使用string类型自带的转换方式,因而在实际过程中避免了很多bug

使用基本代码 完成复杂功能  和拼积木一样 使我们学习的首要目标

编程不在于用多么高级的方法 而是把基础的东西融会贯通达到目标 回归实战

之后我会用我写的递归当做例子 用通俗易懂的方式分享下递归 (以及我不知道递归的时候做递归题写的假递归)

c# 字符串大小写混合转换的更多相关文章

  1. c语言字符串大小写字母转换

    输入一个以#结束的字符串,本题要求将小写字母全部转换成大写字母,把大写字母全部转换成小写字母,其它字符不变. 输入格式: 输入在一行中给出一个长度不超过40的.以#结束的非空字符串. 输出格式: 在一 ...

  2. [Swift]字符串大小写转换,同时实现本地化或设置语言环境

    在NSString中提供了3种字符串大小写转换方式:1. 转换字符串大小写2. 转换字符串大小写,并实现本地化3. 转换字符串大小写,并设置语言环境. 一. 转换字符串大小写如果只是想单纯的将字符串进 ...

  3. Swift3.0语言教程字符串大小写转化

    Swift3.0语言教程字符串大小写转化 Swift3.0语言教程字符串大小写转化,在字符串中,字符串的格式是很重要的,例如首字母大写,全部大写以及全部小写等.当字符串中字符很多时,通过人为一个一个的 ...

  4. Swift3.0字符串大小写转化

    Swift3.0语言教程字符串大小写转化,在字符串中,字符串的格式是很重要的,例如首字母大写,全部大写以及全部小写等.当字符串中字符很多时,通过人为一个一个的转换是很费时的.在NSString中提供了 ...

  5. linux bash shell:最方便的字符串大小写转换(lowercase/uppercase conversion) (转)

    原文地址:https://blog.csdn.net/10km/article/details/83384145 关于字符串大小写转换,是写 linux 脚本经常干的事儿,所以总想找个方便的方法让我少 ...

  6. 【转】Python 字符串大小写转换

    转载自:python 中字符串大小写转换 一.pyhton字符串的大小写转换, 常用的有以下几种方法: 1.对字符串中所有字符(仅对字母有效)的大小写转换,有两个方法: print 'just to ...

  7. 在LoadRunner中转换字符串大小写的C语言函数

    在LoadRunner中转换字符串大小写的C语言函数 . loadrunner语言ccharacterstringaction 封装ConvertToXXX函数: //ConvertToUpper f ...

  8. python 字符串大小写转换(不能使用swapcase()方法)

    python 3字符串大小写转换 要求不能使用swapcase()方法 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Hiuhung Wa ...

  9. boost 字符串大小写转换

    示例代码如下: #include <boost/algorithm/algorithm.hpp> #include <iostream> using namespace std ...

随机推荐

  1. github blog

    git version 2.18.0.windows.1 node-v10.8.0-win-x64.zip 1 安装node.js,直接下载,配置环境变量即可(win10重启生效) 2 git安装,略 ...

  2. dedecms图片绝对路径(附件绑定域名)的设置方法

    dedecms默认的附件路径使用的是相对路径,但是在实际应用,我们可能会需要让文章的图片附件显示绝对地址,解决方案如下: 1.打开include目录下的文件extend.func.php,添加函数re ...

  3. 9、OpenCV Python 边缘保留滤波

    __author__ = "WSX" import cv2 as cv import numpy as np # 边缘保留滤波 十分重要(美颜的核心) # 高斯双边模糊(考虑到了像 ...

  4. Warning: Static member accessed via instance reference

    Warning: Static member accessed via instance reference Shows references to static methods and fields ...

  5. 梯度下降&随机梯度下降&批梯度下降

    梯度下降法 ​ 下面的h(x)是要拟合的函数,J(θ)损失函数,theta是参数,要迭代求解的值,theta求解出来了那最终要拟合的函数h(θ)就出来了.其中m是训练集的记录条数,j是参数的个数. 梯 ...

  6. [ZJOI2009]假期的宿舍 BZOJ 1433 二分图匹配

    题目描述 学校放假了 · · · · · · 有些同学回家了,而有些同学则有以前的好朋友来探访,那么住宿就是一个问题.比如 A 和 B 都是学校的学生,A 要回家,而 C 来看B,C 与 A 不认识. ...

  7. react 中文文档案例三 (开关按钮)

    开关按钮制作   import React from 'react'; import ReactDOM from 'react-dom'; class Toggle extends React.Com ...

  8. Flowerpot(又是尺取。。)

    题目:http://172.21.85.56/oj/exercise/problem?problem_id=21568 题目大意:老板需要你帮忙浇花.给出N滴水的坐标,y表示水滴的高度,x表示它下落到 ...

  9. 华东交通大学2015年ACM“双基”程序设计竞赛1003

    Problem C Time Limit : 3000/1000ms (Java/Other)   Memory Limit : 65535/32768K (Java/Other) Total Sub ...

  10. Quartz中Cron详解

    Quartz中的cron跟Linux系统的cron定义不太一样(Linux从分开始) 特殊字符: * 用来表示包含一个范围内的任意值. 例如, 分钟位置的“*” 表示 “每分钟”. ?  当不特定指代 ...