当前位置: 首页 > 面试题库 >

Java中的ROT-13功能?

徐丰茂
2023-03-14
问题内容

作为标准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接口有