我想获得这样的一个方法:当所传过来的值为“A”时,返回的值为“B”。
当所传过来的值为“C”时,返回的值为“D”。以此类推。
当所传过来的值为“Z”时,返回的值为“AA”。
当所传过来的值为“AA”时,返回的值为“AB”。
当所传过来的值为“AZ”时,返回的值为“BA”。
当所传过来的值为“BA”时,返回的值为“BB”。以此类推。当传过来的值为“ZZ”时,没有返回值。因为是新手,所以写起来有些困难。请指教!
当所传过来的值为“C”时,返回的值为“D”。以此类推。
当所传过来的值为“Z”时,返回的值为“AA”。
当所传过来的值为“AA”时,返回的值为“AB”。
当所传过来的值为“AZ”时,返回的值为“BA”。
当所传过来的值为“BA”时,返回的值为“BB”。以此类推。当传过来的值为“ZZ”时,没有返回值。因为是新手,所以写起来有些困难。请指教!
解决方案 »
- 用友NC 的二次开发流程
- 求救~linux系统下用java编写一个内存测试程序,算出cpu的miss rate等一大堆数据
- 请大家帮帮忙,一个小问题
- 关于变量的实例域问题
- 高分相赠,急!!!!!!!!!!!!!!
- Synchronizer+MyEclipse创建hibernate.cfg.xml文件的时候,怎么老是这个错误,该怎么解决,急!!!
- 《Thinking in Java》中的reference表示什么??
- 关于递归的一个小问题,找不到程序问题出哪里了
- 监听HTTP端口的问题
- 好象在jbuilder4中,没法加入中文注释,对吗?
- applet里ServerSocket监听端口的类没有main怎么自动运行,随时监听C语言发过来的请求,然后处理???
- rt.jar 应该是设定在classpath下,是吗?
strOutput = new String((str.charAt(0)+1));
else if ((str.length == 1 && str.equals("Z")))
strOutput = "AA"
else if ...
...I think it's not hard, right?
ctmp++;来处理
判断 传过来的值的位数 存在以下几种情况(可以把传过来的值转化成char[]进行处理)
if(str.length==1)
{
if(str[0]=='z')
{...}
else
{...}
}
else if(str.length==2)
{
if(str[1]=='z')判断最后一位是不是"z"
{str[0]++;str[1]='A'}
else
{str[1]++;}
}
else
{...}
基础不扎实,所以有点困难。“用char ctmp;
ctmp++;来处理”这个语句怎么用 能否讲解以下
public static String convert(String org){
org = org.toUpperCase();
if(org.length() == 1){
if(org.charAt(0) != 'Z'){
return ""+((char)(org.charAt(0)+1));
}else{
return "AA";
}
}else if(org.length() == 2 && org != "ZZ"){
if(org.charAt(1) != 'Z'){
return org.charAt(0)+""+(char)(org.charAt(1)+1);
}else{
return (char)(org.charAt(0)+1)+""+'A';
}
}
return null;
}
* 凑合写了一个,这个应该可以看懂了吧?
*/
package houlei.test;/**
*
*
* 该类创建于 2008-9-9 上午10:33:05
* @version 1.0.0
* @author 侯磊
*/
public class G {
public static void main(String args []){
System.out.println("A"+"\t"+getNext("a"));
System.out.println("Z"+"\t"+getNext("z"));
System.out.println("AA"+"\t"+getNext("aa"));
System.out.println("AZ"+"\t"+getNext("aZ"));
System.out.println("BA"+"\t"+getNext("BA"));
System.out.println("ZZ"+"\t"+getNext("ZZ"));
}
public static String getNext(String arg){
if(arg==null)return null;
int len = arg.length();
if(len>2 || len<=0)return null;
arg=arg.toUpperCase();
if(len==2){
if(arg.equals("ZZ"))return null;
char [] a = arg.toCharArray();
int dig = a[1]=='Z'?1:0;//进位数
a[1]=(char)((a[1]+1-'A')%(26)+'A');
a[0]=(char)(a[0]+dig);
return new String(a);
}
//只有一位的情况
if(arg.charAt(0)=='Z')return "AA";
return new String(new char[]{(char)(arg.charAt(0)+1)});
}
}
* 凑合写了一个,这个应该可以看懂了吧?
*/
package houlei.test;/**
*
*
* 该类创建于 2008-9-9 上午10:33:05
* @version 1.0.0
* @author 侯磊
*/
public class G {
public static void main(String args []){
System.out.println("A"+"\t"+getNext("a"));
System.out.println("Z"+"\t"+getNext("z"));
System.out.println("AA"+"\t"+getNext("aa"));
System.out.println("AZ"+"\t"+getNext("aZ"));
System.out.println("BA"+"\t"+getNext("BA"));
System.out.println("ZZ"+"\t"+getNext("ZZ"));
}
public static String getNext(String arg){
if(arg==null)return null;
int len = arg.length();
if(len>2 || len<=0)return null;
arg=arg.toUpperCase();
if(len==2){
if(arg.equals("ZZ"))return null;
char [] a = arg.toCharArray();
int dig = a[1]=='Z'?1:0;//进位数
a[1]=(char)((a[1]+1-'A')%(26)+'A');
a[0]=(char)(a[0]+dig);
return new String(a);
}
//只有一位的情况
if(arg.charAt(0)=='Z')return "AA";
return new String(new char[]{(char)(arg.charAt(0)+1)});
}
}
preferme谢谢2位!
preferme 刚才打错了!
谢谢2位!!!感激不尽!