当前位置: 代码迷 >> Eclipse >> 字符串中从第m个字符开始的全部字符复制成为另一个字符串。该如何解决
  详细解决方案

字符串中从第m个字符开始的全部字符复制成为另一个字符串。该如何解决

热度:83   发布时间:2016-04-23 01:41:06.0
字符串中从第m个字符开始的全部字符复制成为另一个字符串。
输入
数字n 一行字符串数字m

输出
从m开始的子串

样例输入
6
abcdef
3
样例输出
cdef

public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner rd=new Scanner(System.in);
int n=rd.nextInt();
String str[]=new String[n];
for(int i=0;i<str.length;i++)
{
str[i]=rd.nextLine();
}
int m=rd.nextInt();
copy(str,m);
}
public static void copy(String[] str,int m)
{
String a[]=new String[(str.length-m)+1];
System.arraycopy(str, m, a, 0, a.length);
for(int i=0;i<a.length;i++)
{
System.out.print(a[i]);
}

}

为什么我的没反应?
------解决方案--------------------
那简单,用String的方法 substring()就行。使用很简单。
按你的格式,改了一下。参考一下:

public static void main(String[] args)
{
// TODO Auto-generated method stub
Scanner rd=new Scanner(System.in);
int n=rd.nextInt();
rd.nextLine();              //去掉回车换行的影响.
String str;
do //输入的字符串长度不等于n,重输入。
{
str=rd.next();
}while(str.length()!=n);
int m=rd.nextInt();
copy(str,m);
}
public static void copy(String str,int m)
{
String temp=str.substring(m); //关键就这句.
System.out.println("new string is "+temp);
}
  相关解决方案