如何在Java中解析字符串?
这是我的代码:
import java.io.*;
import java.util.*;
public class Testing {
public static void main(String[] args) {
Scanner in = new Scanner(System.in );
PrintStream out = System.out;
String input = in .next();
String output = "";
char c = 0;
int count = 0;
int countInput = input.length();
for (int i = 0; i < countInput; i++) {
if (i == 0) {
c = input.charAt(i);
count++;
} else {
if (c == input.charAt(i)) {
count++;
} else {
output = output + count + "" + c;
count = 1;
c = input.charAt(i);
out.println(output);
}
}
}
output = output + count + "" + c;
out.println(output);
}
}
本程序的工作原理如下:
输入:
java Testing AAAAAnnnfffkk
输出:
5A3n3f2k
我需要以某种方式解决这个问题:
String input = in.next();
我认为args
必须在某个地方使用,但我不确定在哪里
# 1 楼答案
您的程序逻辑正常。但是基于您想要做的事情,您将不需要
Scanner
类如果希望输入来自arguments数组:
main(String[] args)
,则需要将其分配给输入:但是,如果你在没有给出参数的情况下运行程序呢?它将引发异常,因此您需要进行某种错误处理:
# 2 楼答案
你肯定需要一个主要的方法。请尝试通过此链接阅读有关主要问题的内容。希望能有帮助。 http://www.dreamincode.net/forums/topic/38921-a-closer-look-at-the-main-method/
# 3 楼答案
我们可以一步一步地完成
首先,编写一个程序来获取输入,然后一次打印一个字符
原因是您需要读取输入,并一次处理一个字符,因此第一步是让循环机制停止
一旦循环正确,我们就可以担心重复字母计数的逻辑
完成后编辑你的帖子,我会在这里发布更多
# 4 楼答案
在代码示例中:
编辑:
如果您喜欢使用args,则: