试图弄清楚如何使用递归c#

时间:2017-11-30 00:28:06

标签: c# recursion

我正在学习递归,我想创建一个函数来输入一些东西并给我相同的字符串但是反向却无法找到它的逻辑。

    public static string Reverse(string text, int textlength)
    {
        if (textlength== 0)
        {
            return text.ElementAt(textlength).ToString();
        }
        else
        {
            return Reverse(text, textlength - 1);
        }           
    }

我怎么能用递归呢?

1 个答案:

答案 0 :(得分:1)

递归总是有两种情况,基本情况和递归情况。

基本情况是字符串为0或1个字符时 - 反过来就是传入的字符串,因此我们返回 OkHttpClient.Builder okhttpClientBuilder=new OkHttpClient.Builder(); HttpLoggingInterceptor loggin=new HttpLoggingInterceptor(); loggin.setLevel(HttpLoggingInterceptor.Level.BODY); okhttpClientBuilder.addInterceptor(loggin); Retrofit.Builder builder = new Retrofit.Builder() .baseUrl("https://intense-lake-39874.herokuapp.com") .addConverterFactory(GsonConverterFactory.create()) .client(okhttpClientBuilder.build()); Retrofit retrofit = builder.build(); UserClient service = retrofit.create(UserClient.class); Call<Usuarios> call = service.create(usuario); call.enqueue(new Callback<Usuarios>() { @Override public void onResponse(Call<Usuarios> call, Response<Usuarios> response) { Toast.makeText(Main2Activity.this,"Usuario Registrado! "+response.body().getMessage,Toast.LENGTH_SHORT).show(); } @Override public void onFailure(Call<Usuarios> call, Throwable t) { Toast.makeText(Main2Activity.this,"Algo fallo..",Toast.LENGTH_SHORT).show(); } }); }

递归情况是text长于1个字符时,我们必须根据自身定义操作。在这种情况下,字符串的反向与字符串的其余部分相反,后跟第一个字符。

text