- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我是学习java的新手,在这个特定的作业上遇到了很多麻烦。通常我可以在经过一些研究后找出解决方案,但这让我感到困惑。这是一个程序,用于读取包含字母“G”和“B”的不同组合(例如 GG、GB、BB、BG)的文件,我必须计算该文件有多少行以及每个组合弹出的实例数。任何帮助将不胜感激!我尝试搜索所有帖子并尝试一些东西,但现在看来我的程序无法运行(尽管没有给我任何错误消息)。
源代码:
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
public class Family
{
public static void main(String[] args) throws IOException
{
//define variables
String lineRead = "";
int numberLines = 0; //# of lines
int bothMales = 0; //# of houses with both males
int bothFemales = 0; //# of houses with both females
int oneEach = 0; //#of houses with one male and one female
File fileName = new File("test1.txt");
Scanner inFile = new Scanner(new File("test1.txt"));
while (inFile.hasNextLine())
{
numberLines++;
inFile.nextLine();
Scanner check = new Scanner(inFile.nextLine());
while(check.hasNext())
{
if (inFile.equals("BB"))
{
bothMales++;
}
else if (inFile.equals("GG"))
{
bothFemales++;
}
else if ((inFile.equals("GB")) || (inFile.equals("BG")))
{
oneEach++;
}
}
}
System.out.println("Sample Size: " + numberLines);
System.out.println("Two Boys: " + bothMales );
System.out.println("Two Girls: " + bothFemales);
System.out.println("One Girl and One Boy: " + oneEach);
}//end main method
}//end class
最佳答案
您必须使用扫描仪的nextLine
方法
while(check.hasNext())
{
String line = check.nextLine ();
if (line.equals("BB"))
{
bothMales++;
}
// etc
}
根据您的线路,您可能希望在 String
上使用 trim
方法或使用 contains,而不是 equals
关于java - 如何使用扫描仪类扫描文本文件,挑选出某些短语并对其进行计数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39760609/
我即将将主干中的某些修订合并到发布分支中。我用 mergeinfo 检查了有多少修订符合合并条件,结果是 42。尽管检查每个修订日志并决定是否应该合并它绝对是可能的并且不太难。然后,我将使用 Tort
我有 5 个文件夹,每个文件夹包含大小为 10KB、500KB、1MB、5MB 和 30MB 的“n”个文件。现在我需要从这些文件夹中选择正好 15000 个文件并将它们放入一个新文件夹中,这样我就可
嗨,我已经成功解析了一个以公里为单位的距离的 XML 文件。但结果我得到了源距离列表,但列表中的最后一个元素包含列表中所有其他元素的总和。如何获取列表中的最后元素 一些源代码: for(int s=0
我正在尝试修剪它,它存储在一个名为 $line 的变量中。 [2012-06-18 10:37:09,026 (there is a lot of text after this, i just cu
我正在使用 Python Selenium 绑定(bind)并测试网络服务器。我试图断言文本“回归”和“回归测试”的存在。有谁知道如何做吗?这是我在检查我感兴趣的元素时看到的内容: Regressi
我是一名优秀的程序员,十分优秀!