Java如何打印数组?
我对编程有点陌生,我知道问题很简单。。但是我想不出来 假设我想创建一个这样的arraylist;Java如何打印数组?,java,arrays,string,Java,Arrays,String,我对编程有点陌生,我知道问题很简单。。但是我想不出来 假设我想创建一个这样的arraylist; stringwords[]={}而不是ArrayList words=new ArrayList()或 ArrayList words=new ArrayList() 但问题是。。。当我想将我们在创建的字符串上扫描的单词添加到列表中时,我得到一个错误。。 (“无法对数组类型字符串[]调用add(String)。” )我尝试使用Arrays.toString()方法。。但我想是有的 我想念的东西。。你
stringwords[]={}
而不是ArrayList words=new ArrayList()代码>或
ArrayList words=new ArrayList()代码>
但问题是。。。当我想将我们在创建的字符串上扫描的单词添加到列表中时,我得到一个错误。。
(“无法对数组类型字符串[]调用add(String)。”
)我尝试使用Arrays.toString()方法。。但我想是有的
我想念的东西。。你们能帮帮我吗
import java.util.Arrays;
import java.util.Scanner;
public class testing_Stuff {
public static void main(String[] args) {
String sentence =("This is texting");
Scanner scan = new Scanner(sentence);
String words [] = {};
while(scan.hasNext()) {
words.add((scan.next());
}
System.out.println(words);
}
}
您试图在数组上使用add
方法,这是不可能的。此外,您还有一些语法错误
您可以从开始定义数组的长度,然后按如下方式添加到数组中:
String sentence ="This is texting";
Scanner scan = new Scanner(sentence);
String words[] = new String[sentence.split(" ").length];
int i = 0;
while(scan.hasNext()) {
words[i++] = scan.next();
}
System.out.println(Arrays.toString(words));
String sentence = "This is texting";
Scanner scan = new Scanner(sentence);
List<String> words = new ArrayList<>();
while(scan.hasNext()) {
words.add(scan.next());
}
System.out.println(words);
或者,您可以使用以下列表:
String sentence ="This is texting";
Scanner scan = new Scanner(sentence);
String words[] = new String[sentence.split(" ").length];
int i = 0;
while(scan.hasNext()) {
words[i++] = scan.next();
}
System.out.println(Arrays.toString(words));
String sentence = "This is texting";
Scanner scan = new Scanner(sentence);
List<String> words = new ArrayList<>();
while(scan.hasNext()) {
words.add(scan.next());
}
System.out.println(words);
stringwords[]
是数组而不是ArrayList
!这是正确的。。我的错,我指的是数组..不能在基元数组上使用方法。primitiva数组有一个fix sizeAs@Jens声明,不能在数组上调用add方法-它不存在。如果要向数组中添加元素,则必须创建一个大小足以容纳该元素的新数组,或者必须使初始数组足够大以添加更多元素。谢谢您的评论。。我怎样才能以最有效的方式做到这一点?