Java中字符串的奇怪问题
我是JAVA新手,发现它的一些概念非常令人恼火,无论我怎么努力,我都找不到合适的解释来解释这种行为……当然,这些问题有很多解决方法,但我还是想知道我是缺少了一些非常简单的东西还是JAVA就是这样Java中字符串的奇怪问题,java,arrays,string,Java,Arrays,String,我是JAVA新手,发现它的一些概念非常令人恼火,无论我怎么努力,我都找不到合适的解释来解释这种行为……当然,这些问题有很多解决方法,但我还是想知道我是缺少了一些非常简单的东西还是JAVA就是这样 我的一个类a中有一个字符串数组,我希望它通过另一个类B的方法填充…所以我在a中创建了一个类B的对象,调用方法B.xyz并将其与字符串数组相等,但我不能这样做…java抛出了一个空指针异常………我不知道为什么 公共B类{ 公共void xyz(){ 字符串[]mystrings=新字符串[70]; 对于
公共B类{
公共void xyz(){
字符串[]mystrings=新字符串[70];
对于(int i=0;i如果您只需要长度为5的数组,则仅将其初始化为该大小,例如:
public String[] xyz(String value) {
String[] mystrings = new String[5];
for (int i = 0; i < mystrings.length; i++) {
mystrings[i] = value;
}
return mystrings;
}
然后,您可以获取其大小,添加到其中并打印如下元素:
List<String> list = abc("foo");
System.out.println(list.size());
list.add("bar");
for (String value : list) {
System.out.println(value);
}
List List=abc(“foo”);
System.out.println(list.size());
列表。添加(“酒吧”);
for(字符串值:列表){
系统输出打印项次(值);
}
希望有帮助。如果您只需要长度为5的数组,则只需将其初始化为该大小,例如:
public String[] xyz(String value) {
String[] mystrings = new String[5];
for (int i = 0; i < mystrings.length; i++) {
mystrings[i] = value;
}
return mystrings;
}
然后,您可以获取其大小,添加到其中并打印如下元素:
List<String> list = abc("foo");
System.out.println(list.size());
list.add("bar");
for (String value : list) {
System.out.println(value);
}
List List=abc(“foo”);
System.out.println(list.size());
列表。添加(“酒吧”);
for(字符串值:列表){
系统输出打印项次(值);
}
希望能有所帮助。您在类B
中将xyz声明为返回类型为void
的方法。您可能需要返回字符串数组的签名,public string[]xyz()
此外,您没有在B中正确声明数组,正确的声明是:
String[]myStrings=新字符串[70];
--Dan您在类B
中将xyz声明为返回类型为void
的方法。您可能需要返回字符串数组的签名,public string[]xyz()
此外,您没有在B中正确声明数组,正确的声明是:
String[]myStrings=新字符串[70];
--Dan我建议您考虑使用类似列表的ArrayList,因为这样可以包装数组,使其更易于使用
String[] mystrings[70];
这将创建一个或多个数组。有两个[]
我建议你试试
String[] mystrings = new String[5];
我建议您考虑使用类似于ArrayList的列表,因为这样可以包装数组,使它们更易于使用
String[] mystrings[70];
这将创建一个或多个数组。有两个[]
我建议你试试
String[] mystrings = new String[5];
您可能不想“将类B创建成一个对象”,而是希望引用一个活动的对象。为了更好地帮助,请考虑将格式化的代码张贴以便我们可以读取它。您的代码不编译。我不知道您是如何执行它的。“String [] Mystring(70);未正确编辑以删除“按引用传递”标记,您没有在任何地方传递任何内容。@fmucar:是的,这是对代码的一次键入编辑您可能不想“将B类对象创建到a中”而是希望对活动的对象进行引用。为了更好地帮助,请考虑将格式化的代码张贴以便我们可以读取它。您的代码不编译。我不知道您是如何执行它的。“String [] Mystring(70);未编辑以删除“按引用传递”标记,您没有在任何地方传递任何内容。@fmucar:是的,这是编辑代码时的一个输入错误