华为30

来源:互联网 发布:马踏棋盘深度优先算法 编辑:程序博客网 时间:2024/06/09 17:32

题目描述

将一个字符串str的内容颠倒过来,并输出。str的长度不超过100个字符。 如:输入“I am a student”,输出“tneduts a ma I”。

输入参数:
inputString:输入的字符串

返回值:
输出转换好的逆序字符串

输入描述:
输入一个字符串,可以有空格

输出描述:
输出逆序的字符串

输入例子:
I am a student

输出例子:
tneduts a ma I

提供两种解法

package NiukeBrush;import java.util.Scanner;public class Huawei32 {    public static void main(String[] args) {    Scanner sc=new Scanner(System.in);    while(sc.hasNext())    {        String inputString=sc.nextLine();        System.out.print(Inverted(inputString));    }    }    //Reverse string    private static String Inverted(String inputString)    {         StringBuilder sb=new StringBuilder();         sb.append(inputString);         sb.reverse();         return sb.toString();    }}

第二种

package NiukeBrush;import java.util.Scanner;public class Huawei31 {    public static void main(String[] args) {    Scanner sc=new Scanner(System.in);    while(sc.hasNext())    {        String inputString=sc.nextLine();        System.out.print(Inverted(inputString));    }    }    //Reverse string    private static String Inverted(String inputString)    {         StringBuilder sb=new StringBuilder();             String[] str=inputString.split(" ");             for(int i=str.length-1;i>=0;i--)             {                    sb.append(" ");                for(int j=str[i].length()-1;j>=0;j--)                {                    sb.append(str[i].charAt(j));                }             }             return sb.toString().trim();    }}//数组长度与索引关系是:最大索引+1=数组长度//字符串长度和索引关系是:最大索引+1=长度

这里一个总结:

gheha sdfaException in thread "main" java.lang.ArrayIndexOutOfBoundsException: 2    at NiukeBrush.Huawei31.Inverted(Huawei31.java:26)    at NiukeBrush.Huawei31.main(Huawei31.java:12)

我报了这个错:其实就是数组越界,这个时候要做的关系就是仔细辨别逻辑关系。
数组:数组的最大索引+1=长度 。数组用length
字符串也是一样:字符串的最大索引+1=长度。字符串用:length()表示长度
集合类用:size()表示长度
用loop的时候:for(int i=a;i>=0;i++)要注意这里一定是减减,如果跟前面数组之类一起用的话,一定要注意次序逻辑。

0 0
原创粉丝点击