爪哇岛。所以我想输入一个整数数组,然后使用 StringTokenizer 打印出最大值。我知道如何使用整数来做到这一点,但是当我尝试使用数组时,字符串到 int 命令 (Integer.parseInt) 失败了 - 无法从 int 转换为 int[]。
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.StringTokenizer;
public class Main {
public static void main(String[] args) throws IOException {
BufferedReader in = new BufferedReader(new InputStreamReader(System.in));
String strTmp;
StringTokenizer strTok;
while ((strTmp = in.readLine()) != null && strTmp.length() != 0) {
strTok = new StringTokenizer(strTmp);
int[] c;
c = Integer.parseInt(strTok.nextToken());
int max = 0;
for (int i = 0; i < c.length; i++) {
if (c[i] > max) {
max = c[i];
}
}
System.out.println(max);
}
}
}
我该如何解决这个问题,或者我应该使用其他命令吗?
< code > Integer . parse int(String)返回一个整数,而不是< code >整数数组。你必须将返回值存储在一个int变量中,比如
int i = Integer.parseInt(String);
您必须迭代整数数组并将其索引值设置为返回的整数值
for (int i = 0; i < c.length; i++) {
c[i] = Integer.parseInt(strTok.nextToken());
if (c[i] > max) {
max = c[i];
}
}
希望这有帮助!
int[] c;
c = Integer.parseInt(strTok.nextToken());
您正在尝试将单个整数对象分配给int
数组。
而是使用< code > int[index]= integer . parse int(strtok . nexttoken());
您似乎对是否真的想要一个数组感到困惑。您正在解析一个值,但试图将该int
分配给c
,这是一个数组变量。您并不真正需要一个,因为您只需要记住当前最大值和您刚刚解析的值:
int max = Integer.MIN_VALUE;
while (strTok.hasMoreTokens()) {
int value = Integer.parseInt(strTok.nextToken());
if (value > max) {
max = value;
}
}
如果你真的想要一个数组,那么你需要在解析它们之前知道有多少个记号,这是很棘手的。
另一种方法是创建一个< code >列表
// First parse everything...
List<Integer> values = new ArrayList<>();
while (strTok.hasMoreTokens()) {
values.add(Integer.parse(strTok.nextToken());
}
// Then you can find the maximum value in the list
我个人更喜欢第一种方法,如果你只需要找到最大值的话。
问题内容: 我有一个关于代码优化的问题(可以运行,但是太慢了……)。我正在阅读形式的输入 其中Xi,Yi是整数。我用于读取行,然后用于处理这些数字,如下所示: 问题在于,这种方法在处理大型数据集时似乎效率低下。您能否建议我做一些简单的改进(我听说可以使用一些整数分析int或regex)来提高性能?谢谢你的提示 编辑:也许我判断错了,必须在代码的其他地方进行一些改进… 问题答案: (更新的答案) 我
我有以下代码,它将标记字符串以创建对象列表: 我预期的输出是 1#、#Jon#、#176 2#、#Jack#、#200 3#、#Jimmy#、#160 如果我把内部分界线更改为类似的东西,它会正常工作为什么会发生这种行为?
我必须把句子中每个单词的第一个字符大写。第一个单词的第一个字符是大写的,句子只能以句号或问号结尾。然后我要数一数句子中每个单词的元音和辅音。 这是我的代码: 这个类名很奇怪,因为这是我计算机考试中问的一个问题。 程序在某种程度上正常工作,但由于某种原因,我在中的
我有以下输入字符串: 这里有各种各样的错误:标题前面有“。”应该是ID后面的分隔符。作者姓名的最后两个字符出现在日期字段中,实际日期丢失。 我怎样才能纠正这些问题?
代码段用于获取从文本文件中提取的一行文本,将其分离为单独的标记,并将每个标记存储在数组的索引中。起初我以为问题出在文本文件上,但是直接将字符串放入编辑器并不能解决这个问题。 使用字符串,如: 带分隔符的StringTokenizer对象返回前四个标记作为正确的字符串,但其余四个标记为null。 有趣的是,另一个字符串: “Gnollnonegeralany222taunttaunt” 鸡肉没有野兽
问题内容: 我有一个应该在课程中使用StringTokenizer的字符串。我已经制定了如何实施该项目的计划,但是我找不到如何将每个字符都用作分隔符的参考。 基本上,我需要将一个字符串(例如“河马校园是聚会场所”)划分为每个字符的令牌,然后将它们与一组值进行比较,然后将一个特定的值交换出来。我知道如何做其他所有事情,但是分隔每个字符的分隔符是什么? 问题答案: 如果您真的想使用StringToke