考虑这个例子,从0到10颠倒数字的顺序:<代码>
这以一种双重的方式颠倒了顺序。如果我输入100个从0到10的数字,它包含a
对于字典顺序,我需要同样的东西。我有一根固定长度为10的绳子。如何颠倒字典顺序?
如果它只包含a-z
,这将非常简单。但是它也可以包含数字和-,_
,并且区分大小写。
有人知道怎么做吗?
public static final String CHAR_INT_REPR_SPEICHERSTRING = "_-0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz";
public static String invertiereString(String key) {
String invertiert = "";
for (int i = 0; i < key.length(); i++){
String c = key.charAt(i) + "";
invertiert += invertiereChar(c);
}
return invertiert;
}
public static String invertiereChar(String c) {
int intRepr = gibCharIntRepr(c);
// invertiere zahl
int neueRepr = 64-intRepr-1;
return gibChar_FromRepr_At(neueRepr);
}
public static int gibCharIntRepr(String c) {
if (c.length() != 1) {
return -1;
}
for (int i = 0; i < CHAR_INT_REPR_SPEICHERSTRING.length(); i++) {
String cTemp = CHAR_INT_REPR_SPEICHERSTRING.charAt(i) + "";
if (cTemp.equals(c)) {
return i;
}
}
return -1;
}
public static String gibChar_FromRepr_At(int at) {
return CHAR_INT_REPR_SPEICHERSTRING.charAt(at)+"";
}
这就是工作。
使用哈希映射,您可以比使用CHAR\u INT\u REPR\u SPEICHERSTRING
更快地实现这一点,但由于我的字符串长度不超过17个字符,因此我最多可以进行17*64次迭代,这是没有问题的。
问题内容: 我保存在一个名为的String变量中。 我需要打印,但是要反转。 我怎样才能做到这一点?我知道Java中已经内置了某种功能。 问题答案: 你可以使用此: 或者,对于JDK 1.5之前的版本,请使用代替-它们具有相同的。感谢评论员指出,如今在没有并发问题的情况下,这是首选方法。
本文向大家介绍在Java中按字典顺序比较两个字符串,包括了在Java中按字典顺序比较两个字符串的使用技巧和注意事项,需要的朋友参考一下 String类的方法。此方法按字典顺序比较两个字符串。比较是基于字符串中每个字符的Unicode值。在字典上比较此String对象表示的字符序列与自变量字符串表示的字符序列。该方法返回 如果当前String对象在字典上在参数字符串之前,则为负整数。 如果当前Str
问题内容: 我有unicode ,我希望它以字典格式。 我想要它的格式。 我试过了,但它返回的字符串不是字典。 谁能帮我? 问题答案: 您可以使用内置包: 帮助ast模块中的literal_eval函数: literal_eval(node_or_string) 安全地评估表达式节点或包含Python表达式的字符串。提供的字符串或节点只能由以下Python文字结构组成:字符串,数字,元组,列表,字
添加到StringBuilder中,然后调用reverse()。
问题内容: 我有以下字符串,这是一个字符串化的Python字典: 如何从上述字符串中获取Python字典? 问题答案: 好吧,你可以做 但是,如果字符串包含用户输入,则是个坏主意,因为表达式中可能包含一些随机的恶意函数。 因此,更安全的选择可能是: 来自http://docs.python.org/library/ast.html#ast.literal_eval: 提供的字符串或节点只能由以下P
我想知道下面的程序出了什么问题,因为它没有返回反向字符串。