华为机试题--将字符串中的字母全部替换成字母的下一个字母
来源:互联网 发布:淘宝东大门代购哪家好 编辑:程序博客网 时间:2024/06/11 09:49
一、问题描述
功能描述:将字符串中的字母全部替换成字母的下一个字母,要是最后一位是z或Z则替换为a或A。
输入:aBxyZ
输出:bCyzA
要求实现方法:
public String nextString(String data)
{
//TODO
return "";
}
二、算法分析
第一个问题: 如何把字符串转化为字符数组,然后单独下一个字符。
1 .遍历数组,char换成int 让后让int 加1 再转为 char。
第二个问题: 对于最后一位应该如何判断。
2、遍历过程中如果是length - 1 那么就是做特殊判断。
三、算法:
public String nextString(String data){ char[] arr = data.toCharArray(); for (int i = 0; i < arr.length; i++) { if(arr[i]== 'z' && i == arr.length - 1) { arr[i] = 'a'; }else if (arr[i]== 'Z' && i == arr.length -1) { arr[i] = 'A'; } else { arr[i] = (char)(arr[i] + 1); }} return String.valueOf(arr);}
四:测试
运行结果:
package com.albertshao.csi.interview;/** * @author albertshao * */public class Main10 {public static void main(String[] args) {Main10 m = new Main10();System.out.println(m.nextString("aBxyZ"));}/** * Gets the string made by the next character of input string. */public String nextString(String data){ char[] arr = data.toCharArray(); for (int i = 0; i < arr.length; i++) { if(arr[i]== 'z' && i == arr.length - 1) { arr[i] = 'a'; }else if (arr[i]== 'Z' && i == arr.length -1) { arr[i] = 'A'; } else { arr[i] = (char)(arr[i] + 1); }} return String.valueOf(arr);}}
运行结果:
bCyzA
0 0
- 华为机试题--将字符串中的字母全部替换成字母的下一个字母
- 将字符串中的所有字母都替换成该字母的下一个字母
- 替换字符串中的字母为下一个字母
- 将一个字符串中字母替换为下一个字母
- 将字符串中的每一个字母变成其下一个字母
- 替换字符串中的字母
- 华为机试—替换字符串中的字母
- 华为机试—替换字符串中的字母
- 把字符串内的字母转换成该字母的下一个字母
- 把字符串内的字母转换成该字母的下一个字母
- 题目:替换字符串中的字母
- PB替换字符串中全部指定字母
- 将输入的字符串中的小写字母全部转化为大写字母
- 华为机试题一 字母与字符串位置
- 2014华为机试题4:找出字符串中的元音字母并输出
- 谷歌面试题:将字符串中的小写字母排在大写字母的前面
- 请编写一个函数fun(char *s),其功能是:将s所指字符串中所有的字母改写成该字母的下一个字母,若是z字母,则改为a字母,大、小写保持不变。
- 替换下划线并让它的下一个字母为大写
- Eclipse 3.7如何安装egit
- gtk.gdk.Window
- (转)创业干货分享:初创公司移动应用开发工具库(集合)
- C++11 的Lambda
- in和exists区别
- 华为机试题--将字符串中的字母全部替换成字母的下一个字母
- Java Concurrency
- 深入浅出Mybatis-插件原理
- 统一的命名
- Flex 遍历 ArrayCollection, Array
- Hello World
- NYOJ 42 一笔画问题
- 深入浅出Mybatis-sql自动生成
- SQL Server 数据库定时自动备份