简单的Java字符串反转

时间:2016-10-12 03:38:46

标签: java

我遇到了这个问题。

这是我写的代码:

package com.jdewey.rvrs;
import java.util.Scanner;

public class Reverse {

    public static void main(String[] args) {
        Scanner console = new Scanner(System.in);
        System.out.print("Enter your string: ");
        String userIn = console.nextLine();
        int inLength = userIn.length();
        stringRvrs(userIn, inLength);

    }   
    public static void stringRvrs(String x, int length){
        for(int i = 1; i <= length; i++){
            int y = -1 * i + length;
            System.out.print(x.substring(y));;
        }
    }
}

如果您输入“test”

,则应输出“tset”

请帮忙!

3 个答案:

答案 0 :(得分:1)

将字符串编写为从字符串末尾开始,以及使用<?php function getRap($userId){ $url = sprintf("https://www.roblox.com/Trade/InventoryHandler.ashx?userId=" . $userId . "&filter=0&page=1&itemsPerPage=14"); $results = file_get_contents($url); $json = json_decode($results, true); $data = $json['data']['InventoryItems']; $rap = 0; foreach($data as $var) { $rap += $var['AveragePrice']; } echo $rap; } $userId = 1; getRap($userId); ?> 而不是charAt打印每个字符更有意义。见下文:

substring

当然,有一种更简单的方法可以使用库函数来反转一个字符串(参见这里:Reverse a string in Java),但我认为这是一个学习练习,所以我更正了代码而不只是链接到一个简单的方法。

答案 1 :(得分:1)

尝试使用StringBuilder,如下所示:

int length

无需将round(x, precision_unit)=trunc(x/precision_unit+0.5)*precision_unit; 作为参数传递给方法。

答案 2 :(得分:0)

您只需使用stringBuilder.reverse();
在更改后,您的方法应如下所示

public static void stringRvrs(String x, int length){
        StringBuilder sb = new StringBuilder(x);
         System.out.println(sb.reverse());
}


没有必要将String的长度作为参数传递,因为可以在任何时间使用string.length();找到它。