作为标准Java库的一部分,已经有rot13()
和unrot13()
实现吗?还是我必须自己编写并“重新发明轮子”?
它可能看起来像这样:
int rot13 ( int c ) {
if ( (c >= 'A') && (c <= 'Z') )
c=(((c-'A')+13)%26)+'A';
if ( (c >= 'a') && (c <= 'z') )
c=(((c-'a')+13)%26)+'a';
return c;
}
我认为默认情况下它不是Java的一部分,但这是如何实现它的示例。
public class Rot13 {
public static void main(String[] args) {
String s = args[0];
for (int i = 0; i < s.length(); i++) {
char c = s.charAt(i);
if (c >= 'a' && c <= 'm') c += 13;
else if (c >= 'A' && c <= 'M') c += 13;
else if (c >= 'n' && c <= 'z') c -= 13;
else if (c >= 'N' && c <= 'Z') c -= 13;
System.out.print(c);
}
System.out.println();
}
}
资料来源:http :
//introcs.cs.princeton.edu/java/31datatype/Rot13.java.html
编辑:这个问题解决了。如果您想在另一个问题上提供帮助,请访问Java偏置三角形数组中的随机数。 我在做一个乘法游戏,所以我选了两个0到12之间的数字。如果我这样做: 正方形(0x0、1x1、2x2等)的拾取时间为一半(因为1x2与2x1相同)。如何使所有组合以相同的频率拾取?有91种可能的组合(n(n1)/2)。如果有帮助的话,这里有一个13乘13的三角形阵列: 我试着选择第一个数字,然后给第二个
问题内容: (2)和(4)有什么区别? (3)和(5)有什么区别? 为什么在(3)和(6)中给出错误的结果? 问题答案: 除4外,所有这些都依赖于运算符的优先级。 在Java中,优先于。 这意味着2实际上是“读取”的: 因此,第一个的右侧操作数是一个布尔表达式,它将两个对象引用彼此进行比较(事实上,它们在这里都是s都是无关紧要的),在这里它们是不相同的。因此,右侧操作数为boolean 。 但是由
问题内容: 在PHP中,如果我们需要匹配类似的东西,则可以将以下正则表达式与一起使用。 通过使用括号,我们还可以提取单词一,二和三。我知道Java 中的对象,但是无法获得类似的功能;我只能提取整个字符串。我将如何模仿Java中的行为。 问题答案: 对于Matcher,要获取组,您必须使用方法。 例如 : 记住是相同的整个匹配序列。 关于ideone的例子 资源: Javadoc-Matcher.g
Python 模块是一个 Python 文件,定义了各种功能接口。把复杂的功能封装为模块(又称为库),将功能实现的细节隐藏起来,使用该模块(库)的程序员不需要了解实现的细节。通过调用模块封装好的功能,可以用仅仅几行 Python 代码实现某项复杂的功能,例如可以用一行代码就实现一个 Web 服务器。 在 Python 的应用领域中,如:web 开发、人工智能、网络爬虫、数据分析等领域,已经存在了大
问题内容: 我正在尝试将一些Python代码移植到Scala。它大量使用了Numpy和Scipy。虽然我已经找到了许多密集矩阵/线性代数库,它们可以作为NumPy的适当替代品(但不是极好的替代品),但我还没有真正找到能够提供我在SciPy中使用的功能的东西。特别是,我正在寻找一个支持稀疏部分本征分解的库(例如SciPy对arpack的包装),然后再寻找SciPy提供的一些简单内容的库(例如直方图)
问题内容: Java 8中功能接口的定义说: 功能性接口被定义为具有任何接口恰好 一个明确声明的抽象方法。(由于接口可能具有非抽象的默认方法,因此必须进行限定。)这就是为什么功能接口以前称为“单一抽象 方法(SAM)”接口的原因,该术语有时仍然可见。 那么我们为什么这样: 作为中的sort方法List是: lambda表达式表示: Lambda表达式应可分配给功能接口 该Comparator接口有