【发布时间】:2012-04-06 20:55:07
【问题描述】:
我想要做的是创建一个方法,它有一个字符串和一个字符作为参数,然后该方法获取字符串并搜索给定的字符。如果字符串包含该字符,它会返回一个整数数组,其中包含该字符出现的位置。这是我目前所拥有的:
public class Sheet {
public static void main(String[] args) {
String string = "bbnnbb";
String complete = null;
//*******
for(int i = 0; i < string.length(); i++){
complete = StringSearch(string,'n').toString();
}
//********
}
public static int[] StringSearch(String string, char lookfor) {
int[]num = new int[string.length()];
for(int i = 0; i < num.length; i++){
if(string.charAt(i)== lookfor){
num[i] = i;
}
}
return num;
}
}
该方法工作正常,并返回:
0
0
2
3
0
0
我想要做的是把它们变成 1 个字符串,这样它看起来像这样“002300”。 有什么可能的方法吗?我曾尝试在代码的加星标区域执行此操作,但没有成功。
【问题讨论】:
-
为什么投反对票?似乎不是那么糟糕的问题,该操作似乎对 Java 来说是新的。
-
你的任务中“更难”的部分已经准备好了......只需遍历 int[] 并使用 += 运算符。
-
我猜您是 Java 新手,因为您违反了命名约定。命名方法和变量时(除非声明为
final),第一个单词不大写,但后面的单词大写。例如:thisIsCorrect()快乐编码! :) -
您发布的代码不会打印您所说的打印内容。实际上,您发布的代码不会打印任何内容。如果您要打印
complete的值,它只会打印返回数组的哈希码(例如[I@190d11) 为什么不显示您正在使用的实际完整代码?
标签: java arrays string search char