Java字符串数组,计算空格数“&引用;
我正在向用户请求一个字符串。用户输入字符串后,会出现一个提示,询问他们是否希望看到字符串中没有空格、有一个或多个空格,然后显示字符串 我在计算字符串中的空格时遇到问题。如果字符串中有多个空格,则提供的代码仅计数1。全部代码:Java字符串数组,计算空格数“&引用;,java,arrays,count,Java,Arrays,Count,我正在向用户请求一个字符串。用户输入字符串后,会出现一个提示,询问他们是否希望看到字符串中没有空格、有一个或多个空格,然后显示字符串 我在计算字符串中的空格时遇到问题。如果字符串中有多个空格,则提供的代码仅计数1。全部代码: import java.util.*; import java.util.Scanner; public class CountSpacesInStrings { public static void main(String[] args) { Sc
import java.util.*;
import java.util.Scanner;
public class CountSpacesInStrings {
public static void main(String[] args)
{
Scanner s = new Scanner(System.in);
String[] array = new String[20];
System.out.println("Please enter anything..., or type QUIT to quit.");
for (int i = 0; i < array.length; i++) {
array[i] = s.nextLine();
boolean result = Arrays.stream(array).anyMatch("QUIT"::equals);
if(result)
{
break;
}
}
String str = null;
int len = -1;
System.out.println("Would you like to display strings with No Spaces, One Space or More? Type No, One, More to see the results: ");
String answer = s.nextLine();
if(answer.equals("No")){
for (int i = 0; i < array.length;i++) {
int count = 0;
if (array[i] != null) {
if (array[i].charAt(i) != ' ') {
count++;
System.out.println(count);
}
}
}
}
else if(answer.equals("One"))
{
for (int i = 0; i < array.length;i++) {
int count = 0;
if (array[i] != null) {
if (array[i].charAt(i) != ' ') {
count++;
System.out.println(count);
}
//System.out.print(array[i] + " ");
}
}
}
else
System.out.println("No values to show");
System.out.println();
}
import java.util.*;
导入java.util.Scanner;
公共类countspacesinstring{
公共静态void main(字符串[]args)
{
扫描仪s=新的扫描仪(System.in);
字符串[]数组=新字符串[20];
System.out.println(“请输入任何内容…,或键入QUIT以退出”);
for(int i=0;i
}
我要看的部分是:
if(answer.equals("No")){
for (int i = 0; i < array.length;i++) {
int count = 0;
if (array[i] != null) {
if (array[i].charAt(i) != ' ') {
count++;
System.out.println(count);
}
}
}
if(回答等于(“否”){
for(int i=0;i
根据@Pshemo的注释:您需要添加一个嵌套的for循环。第二个for循环必须迭代数组[i]
(这构成一个句子)并计算该句子中的'
字符数。根据@Pshemo的注释:您需要添加一个嵌套的for循环。第二个for循环必须遍历数组[i]
的内容(这构成一个句子)你认为如果(数组[i].charAt(i)!=''{有什么作用?你只有一个循环可以让你迭代数组中的所有句子,但没有任何机制可以迭代每个句子中的所有字符。你认为如果(数组[i].charAt(i)!=''怎么样{
有吗?您只有一个循环,可以迭代数组中的所有句子,但没有任何机制可以迭代每个句子中的所有字符。这不是问题所在。请注意(int i=0;i{
迭代数组中的元素,因此将该数组中的每个元素的count
设置为0
是正确的。OP现在需要的是检查每个句子中的所有字符。@Pshemo啊,对了,我错过了这部分逻辑。感谢您的澄清!这不是问题。请注意循环(int i=0;icount
设置为0
是正确的。OP现在需要的是检查每个句子中的所有字符。@Pshemo啊,对了,我错过了这部分逻辑。感谢您的澄清!