可能的重复:
Java 中的反向“Hello World”
如何打印字符串的反面?
string s="sivaram";
不使用字符串处理函数
在 Java 中访问 String 内容的所有函数都是 String 类的成员,因此都是“字符串函数”。因此,您所写问题的答案是“无法完成”。
假设对您的问题进行了严格解释并且您不能使用 String / StringBuilder 类提供的任何方法(我认为这不是本意),您可以使用反射直接访问 char 数组:
public static void main(String[] args) throws ParseException, NoSuchFieldException, IllegalArgumentException, IllegalAccessException {
String s = "abc";
Field stringValue = String.class.getDeclaredField("value");
stringValue.setAccessible(true);
char[] chars = (char[]) stringValue.get(s);
//now reverse
}
with out using the string handling functions
当然。获取底层char[]
,然后使用标准 C 风格的字符反转,然后String
从反转构建一个新的char[]
char[] chars = s.toCharArray();
//Now just reverse the chars in the array using C style reversal
String reversed = new String(chars);//done
我不会对此进行编码,因为这绝对是家庭作业。但这足以让你开始
public static void main(String args[]){
char[] stringArray;
stringArray = s.toCharArray();
for(start at end of array and go to beginning)
System.out.print( s.charAt( i));
}
不可能不使用任何字符串函数,我有一个只使用两个的代码......
public String reverseString(String str)
{
String output = "";
int len = str.length();
for(int k = 1; k <= str.length(); k++, len--)
{
output += str.substring(len-1,len);
}
return output;
}