【问题标题】:how do i write this method that returns the larger string?我如何编写返回较大字符串的方法?
【发布时间】:2014-03-10 12:17:50
【问题描述】:

我对编程 (java) 完全陌生,我们的老师要求我们在我的编程实验室做一些练习。

现在我似乎不知道如何编写正确的方法。 这是问题: 编写一个方法 max ,它有两个字符串参数并返回两者中较大的一个。

我有

String string1, string2;
public max Strings(string1.length(), string2.length())
{
    if (string1.length()>string2.length)
    {
    return string1;
    else if (string1.length()<string2.length)
        return string2;
    }
}

【问题讨论】:

  • 您需要花一些时间来学习 Java 的基本语法。阅读 Java 入门书籍或教程。
  • 什么是更大的字符串?你的意思是更长的那个?

标签: java string methods max


【解决方案1】:
public String max(String a, String b) {
    return (a.length() > b.length()) ? a : b;
}

存在两个字符串长度相等的条件,未测试,也有空字符串和空字符串,

【讨论】:

  • 我知道我在哪里搞砸了;)谢谢(下面的评论也是如此)
  • 愚蠢的编辑让学习者难以理解,
【解决方案2】:
  • 在 Java 中,所有函数——即使是静态函数——都必须在一个类中

  • Java 函数定义是返回类型然后是名称然后是参数

  • 如果它们的长度相同,则必须决定返回哪个字符串,或者显式返回 NULL

【讨论】:

    【解决方案3】:
    public class LongerString {
    
        public static String max(String a, String b) {
            String maxString = "";
            if (a.length() > b.length())
                maxString = a + " is longer";
            if (b.length() > a.length())
                maxString = b + " is longer";
            if (a.length() == b.length())
                maxString = "Both strings have the same length";
            return maxString;
        }
    
        public static void main(String[] args) {
                System.out.println(max("hey", "hello")); // output: "hello is longer"
        }
    
    }
    

    如您所见,我创建了一个名为“maxString”的变量,它将包含更长的字符串。 "length()" 获取字符串的字符长度。 如果两个字符串的长度相同,则“maxString”将等于“两个字符串具有相同的长度”。然后,该函数返回“maxString”。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-04-03
      • 2021-10-04
      • 2011-06-24
      • 2023-03-10
      相关资源
      最近更新 更多