我正在练习考试,发现了一个我不明白的样本问题.
对于以下代码,找到输出的内容:
public class Test {
private static int count = 0;
public boolean equals(Test testje) {
System.out.println("count = " + count);
return false;
}
public static void main(String [] args) {
Object t1 = new Test();
Object t2 = new Test();
Test t3 = new Test();
Object o1 = new Object();
++count; t1.equals(t2);
++count; t1.equals(t3);
++count; t3.equals(o1);
++count; t3.equals(t3);
++count; t3.equals(t2);
}
}
Run Code Online (Sandbox Code Playgroud)
这段代码的输出是count = 4
,但我不明白为什么.谁能帮我?
我需要输入一个句子并在该句子周围创建一个动态边框.边框需要输入宽度.当句子的长度高于给定的宽度时,必须打印一个新行,并且边框的高度必须改变.句子也必须集中在动态边界
我已经尝试过了:
sentence = input()
width = int(input())
length_of_sentence = len(sentence)
print('+-' + '-'*(width) + '-+')
for letter in sentence:
print('| {0:^{1}} |'.format(letter, width - 4))
print('+-' + '-'*(width) + '-+')
Run Code Online (Sandbox Code Playgroud)
但随后每个带有新行的字母都会打印出来,这不是我需要的.
一个很好的例子如下;
输入
sentence = "You are only young once, but you can stay immature indefinitely."
width = 26
Run Code Online (Sandbox Code Playgroud)
产量
+----------------------------+
| You are only young once, b |
| ut you can stay immature i |
| ndefinitely. |
+----------------------------+
Run Code Online (Sandbox Code Playgroud) 我有一个具有以下身体的班级成绩:
public class Grades {
public static Grade getGrades(int marks) {
if (marks < 10) {
return Grade.FAILED;
} else if (marks < 13) {
return Grade.DISTINCTION;
} else if (marks < 15) {
return Grade.GREAT;
} else {
return Grade.GREATEST;
}
}
public static void main(String args[]){
System.out.println(getGrades(6));
}
}
Run Code Online (Sandbox Code Playgroud)
和枚举类:
public enum Grade {
FAILED("F"),
DISTINCTION("D"),
GREAT("G"),
GREATEST("G");
private String code;
Grade(String code){
this.code = code;
}
public String getCode() {
return code;
}
}
Run Code Online (Sandbox Code Playgroud)
我怎么能在打电话时避免使用if else构造getGrades(int …