我目前正在研究一种方法,该方法将包含用户输入的字符串的所有主题代码输出到列表中。例如,我的ArrayList有4本书,有两个字段:name,subjectCode。目前,该方法的输出返回// True,False,False,True等。如何配置它,以便显示所有True值的subjectCode,例如。当输入s = COM
时,COMM100,COMM200private static void findSubjectCodes(ArrayList<Subject2> list, String s) {
System.out.println("Subject codes found:");
for (int i = 0; i < list.size(); i++)
System.out.println(list.get(i).subjectCode.contains(s) + "\n");
// True, False, True, etc
}
答案 0 :(得分:3)
将contains
条件放入条件分支。 e.g。
for (int i = 0; i < list.size(); i++) {
String subjectCode = list.get(i);
if (subjectCode.contains(s) {
System.out.prinltn(subjectCode + "\n");
}
}
答案 1 :(得分:0)
返回类型.contains(*)
是布尔值,这就是为什么你得到布尔值作为输出。
基本上检查所述属性是否包含接收到的文本,因此list.get(i).subjectCode.contains(s)
正在打印一个布尔值。
要打印主题代码,您需要执行以下操作:
for (int i = 0; i < list.size(); i++){
if(list.get(i).subjectCode.contains(s))
{
System.out.println("Subject is found:" +list.get(i).subjectCode);
}
else{
System.out.println("Subject not found.");
}
}
以下是官方文档:https://docs.oracle.com/javase/7/docs/api/java/lang/String.html