java - 在Java中的方法语句中返回子字符串(n,m)的正确方法是什么?

标签 java string

我正在复习以前的考试问题,我的问题是确定字符串长度并返回它的正确方法是什么。

如果字符串长度小于 5 个字符,那么我可以通过以下方式返回它:

public static String first5(String s){
     if(s.length() < 5)
     return s;
}

如果字符串大于5个字符,可以通过以下方式返回:

public static String first5(String s){

     return s.substring(0, 4);
}

我必须注意的是,当我之前在类测试中回答此类问题时,我的讲师强调我不应该真正使用“魔数(Magic Number)”? 但我不确定他这句话的真正含义。

有没有更好的方法来返回这种类型的方法?

我仍在学习 Java,因此请原谅我语法中的任何错误。

非常感谢。

最佳答案

这应该是您的方法first5:

public static String first5(String s){
  return s.length() < 5? s : s.substring(0, 5);
}

这里没有神奇的数字,但也许老师的意思是数字 5 是一个神奇的数字,并希望你概括这个函数:

public static String firstN(String s, int n){
  return s.length() < n? s : s.substring(0, n);
}

关于java - 在Java中的方法语句中返回子字符串(n,m)的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15509789/

相关文章:

java - 如何创建一个用户闲置5分钟后弹出的对话框? ( java )

c++ - 字符串打印不正确

c++ - 将十六进制字符串转换为字节数组

objective-c - 写入Plist文件,但不要替换它

java - 如何使用java将每个句子中句号后的首字母大写?

java - NullPointerException - 这怎么可能发生?

MS 2007 应用程序中的 Java 屏幕捕获和粘贴问题

java - UDP 网络中的绑定(bind)错误

arrays - 使用正则表达式进行 Scala 数组模式匹配

c++ - 将字符串分配给 char 数组的列