Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/fortran/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 停留在平均字长上_Java_Java.util.scanner_Mean - Fatal编程技术网

Java 停留在平均字长上

Java 停留在平均字长上,java,java.util.scanner,mean,Java,Java.util.scanner,Mean,这段代码的目标是使用主方法java创建一个程序来分析用户输入的文本片段 他们将文本输入扫描仪,然后由程序进行分析。分析是为了产生词频,例如“这是一个测试”产生以下结果: This is a test 1 letter words: 1 2 letter words: 1 3 letter words: 0 4 letter words: 2 5 letter words: 0 我一直坚持的一点是产生一个平均值,我的直觉告诉我要分开 counts.lengthbystr.length但我不是ja

这段代码的目标是使用主方法java创建一个程序来分析用户输入的文本片段

他们将文本输入扫描仪,然后由程序进行分析。分析是为了产生词频,例如“这是一个测试”产生以下结果:

This is a test
1 letter words: 1
2 letter words: 1
3 letter words: 0
4 letter words: 2
5 letter words: 0
我一直坚持的一点是产生一个平均值,我的直觉告诉我要分开
counts.length
by
str.length
但我不是java方面的高手,我尝试过实现这一点,但我得到的都是错误。我不希望有人直接把代码交给我,但是如果有人能给我一个我应该做什么的提示或者给我指出正确的方向,我将不胜感激

代码:

import java.util.Scanner;
公共类文本{
公共静态void main(字符串[]args){
while(true){
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入文本:”);
字符串s;
s=input.nextLine();
系统输出打印项次(“+s”);
String[]strings=s.split(“”);
int[]计数=新的int[6];
for(字符串str:strings)
如果(str.length()
在不太分解代码的情况下,您可以在
计数[]
数组中运行
for
循环,将所有值相加,然后除以
计数.length
得到平均值


但是要注意类型转换。您可能希望执行双除法而不是整数。

在不太分解代码的情况下,您可以在
计数[]
数组中运行
for
循环,将所有值相加,然后除以
计数.length
得到平均值


但是要注意类型转换。您可能希望执行双除法而不是整数。

在不太分解代码的情况下,您可以在
计数[]
数组中运行
for
循环,将所有值相加,然后除以
计数.length
得到平均值


但是要注意类型转换。您可能希望执行双除法而不是整数。

在不太分解代码的情况下,您可以在
计数[]
数组中运行
for
循环,将所有值相加,然后除以
计数.length
得到平均值


但是要注意类型转换。你可能想做双除法而不是整数。

平均来说,我假设你指的是平均长度。我还假设您想要得到一个浮点平均值。在这种情况下,只需将
字符串中所有长度的总和除以数组本身的长度即可

您可以执行以下操作:

int total = 0;
for(String s : strings) total += s.length();
System.out.println((double)total/strings.length);

我希望这有帮助。

平均而言,我假设你指的是平均长度。我还假设您想要得到一个浮点平均值。在这种情况下,只需将
字符串中所有长度的总和除以数组本身的长度即可

您可以执行以下操作:

int total = 0;
for(String s : strings) total += s.length();
System.out.println((double)total/strings.length);

我希望这有帮助。

平均而言,我假设你指的是平均长度。我还假设您想要得到一个浮点平均值。在这种情况下,只需将
字符串中所有长度的总和除以数组本身的长度即可

您可以执行以下操作:

int total = 0;
for(String s : strings) total += s.length();
System.out.println((double)total/strings.length);

我希望这有帮助。

平均而言,我假设你指的是平均长度。我还假设您想要得到一个浮点平均值。在这种情况下,只需将
字符串中所有长度的总和除以数组本身的长度即可

您可以执行以下操作:

int total = 0;
for(String s : strings) total += s.length();
System.out.println((double)total/strings.length);

我希望这有帮助。

这就是你要找的吗

import java.util.Scanner;
public class While_Loop { 

public static void main (String[] args) {

    int lengthSum, wordCount;
    lengthSum = wordCount = 0;

    while(true){

    Scanner input = new Scanner(System.in);

    System.out.println("Enter text: "); 
    String s;
    s = input.nextLine();
    System.out.println("" + s);

    String[] strings = s.split(" ");
    int[] counts = new int[6];
    for(String str : strings)
        if(str.length() < counts.length) counts[str.length()] += 1;
        wordCount++;
        lengthSum += str.length();
    for(int i = 1; i < counts.length; i++)

        System.out.println(i + " letter words: " + counts[i]);  

    System.out.println("Average: " + lengthSum/wordCount);

  }}}
import java.util.Scanner;
公共类,而_循环{
公共静态void main(字符串[]args){
int lengthSum,字数;
lengthSum=wordCount=0;
while(true){
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入文本:”);
字符串s;
s=input.nextLine();
系统输出打印项次(“+s”);
String[]strings=s.split(“”);
int[]计数=新的int[6];
for(字符串str:strings)
如果(str.length()

注意:我只在代码中添加了一些东西。它的书写方式相当混乱。我会在最后清理一些for循环和括号,以便练习使代码更具可读性

这就是你要找的吗

import java.util.Scanner;
public class While_Loop { 

public static void main (String[] args) {

    int lengthSum, wordCount;
    lengthSum = wordCount = 0;

    while(true){

    Scanner input = new Scanner(System.in);

    System.out.println("Enter text: "); 
    String s;
    s = input.nextLine();
    System.out.println("" + s);

    String[] strings = s.split(" ");
    int[] counts = new int[6];
    for(String str : strings)
        if(str.length() < counts.length) counts[str.length()] += 1;
        wordCount++;
        lengthSum += str.length();
    for(int i = 1; i < counts.length; i++)

        System.out.println(i + " letter words: " + counts[i]);  

    System.out.println("Average: " + lengthSum/wordCount);

  }}}
import java.util.Scanner;
公共类,而_循环{
公共静态void main(字符串[]args){
int lengthSum,字数;
lengthSum=wordCount=0;
while(true){
扫描仪输入=新扫描仪(System.in);
System.out.println(“输入文本:”);
字符串s;
s=input.nextLine();
系统输出打印项次(“+s”);
String[]strings=s.split(“”);
int[]计数=新的int[6];
for(字符串str:strings)
如果(str.length()
注意:我只在代码中添加了一些东西。它的书写方式相当混乱。我会在最后清理一些for循环和括号,以便练习使代码更具可读性

这是什么