gpt4 book ai didi

java - 在java中查找带领带的最长名字

转载 作者:太空宇宙 更新时间:2023-11-04 10:51:12 24 4
gpt4 key购买 nike

public void longestName(Scanner console, int num) {
String longest = "";
boolean tie = false;

for(int i = 1; i <= num; i++) {
System.out.print("name #" + i + "? " );
String name = console.next();

if(name.length() == longest.length()) {
tie = true;
} else if(name.length() > longest.length()) {
tie = false;
longest = name;
}
}

String capitalized = longest.substring(0, 1).toUpperCase() +
longest.substring(1).toLowerCase();
System.out.println(capitalized + "'s name is longest");

if(tie)
System.out.println("(There was a tie!)");
}}

if 循环始终返回 tie 为 true。如何仅检查最长姓名的领带?

最佳答案

仅当存在多个具有相同字符且最长的名称时,if 才会返回 tie 为 true。或者,领带是假的。
将代码更改为可运行的类,测试如下:

import java.util.Scanner;

public class Test {
public static void main(String args[]){
longestName(new Scanner(System.in), 3);
}

public static void longestName(Scanner console, int num) {

String longest = "";

boolean tie = false;

for (int i = 1; i <= num; i++) {

System.out.print("name #" + i + "? ");

String name = console.next();

if (name.length() == longest.length()) {

tie = true;

} else if (name.length() > longest.length()) {

tie = false;

longest = name;

}

}

String capitalized = longest.substring(0, 1).toUpperCase() +

longest.substring(1).toLowerCase();

System.out.println(capitalized + "'s name is longest");

if (tie)

System.out.println("(There was a tie!)");
}
}

输入为 jordan、tom 和 bob,输出如下:

name #1? jordan
name #2? tom
name #3? bob
Jordan's name is longest

另一个测试是:

name #1? mary
name #2? andy
name #3? tom
Mary's name is longest
(There was a tie!)

关于java - 在java中查找带领带的最长名字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47831242/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com