现在我有一个排序ArrayList object listA,它的大小约为50到100.现在我想构建另一个ArrayList,它只包含listA中的前30个元素.
那么如何编写代码来实现这一目标.
我可以写一些代码来做到这一点,但我想知道最小时间成本的方法.
如果我们在这里读取add函数的ArrayList文档,显然在无效索引处添加元素会抛出IndexOutOfBoundsException.但为什么以下代码不会抛出任何异常?
public static void main(String args[]){
List cities = new ArrayList();
cities.add("Atlanta");
cities.add("Boston");
try {
for (int i = 10000000; i < cities.size(); i++){
try {
cities.add(i, "+");
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
System.out.println(cities.size());
}
} catch (Exception e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
System.out.println(cities);
}
Run Code Online (Sandbox Code Playgroud)
输出:
[Atlanta, Boston]
Process finished with …Run Code Online (Sandbox Code Playgroud) 线程"main"中的异常java.lang.IndexOutOfBoundsException:索引:0,大小:0,java.util.ArrayList.rangeCheck(ArrayList.java:604)
在arraylist.java中
private void rangeCheck(int index) {
if (index >= size)
throw new IndexOutOfBoundsException(outOfBoundsMsg(index));
}
Run Code Online (Sandbox Code Playgroud)
排队
List lstpp = getResult(pp) ;
System.out.println("=====Persegi Panjang====");
System.out.println("luas = "+((Integer)lstpp.get(0)));
Run Code Online (Sandbox Code Playgroud)
请帮忙
似乎无法做到这一点.我错过了什么?
发现3个错误:
文件:K:\ CustomerLister2.java [line:16]错误:类型java.util.ArrayList文件的方法长度()未定义:
K:\ CustomerLister2.java [line:18]错误:表达式的类型必须是数组类型,但它解析为
java.util.ArrayList文件:K:\ CustomerLister2.java [line:20]错误:表达式的类型必须是数组类型,但它解析为java.util.ArrayList
import java.util.ArrayList;
public class CustomerLister2 {
public static void main (String[] args) {
ArrayList<String> name = new ArrayList<String>();
name.add("Chris");
name.add("Lois");
name.add("Meg");
name.add("Meg");
name.add("Brain");
name.add("Peter");
name.add("Stewie");
for (int i = 0; i < name.length(); i++) {
if (name[i].equals("Meg")) {
name[i] = null;
break;
}
for(String names: name) {
System.out.println(names);
}
}
}
}
Run Code Online (Sandbox Code Playgroud) 该程序的目标是获取两个数组x和y,然后创建和数组列表包含在x和y中出现的数字,然后打印出这个匹配数字的数组.当我去编译时,它给了我第19行预期的错误类和另一个错误说";" 预期在同一条线上,我猜是由于另一个错误.这只是该行的错误还是更大的问题?
import java.util.ArrayList;
import java.util.Arrays;
public class FindCommon {
public static void main (String[] args) {
ArrayList list = new ArrayList();
int[] x = {1, 4, 3, 0, 1, 2};
int[] y = {6, 4, 5, 0, 6, 1};
for (int i = 0; i < x.length ; i++){
int number = x[i];
if (y[].(contains(x[i])){ // Line 19
list.add(x[i]);
}
System.out.println(list);
}
}
}
Run Code Online (Sandbox Code Playgroud) 我认为这样做arraylist1=arraylist2可以使其中的2个共享相同的内存.如果没有他们这样做,我怎么能复制一个arraylist?我想把它们分开对待.
List<Integer> rez = new ArrayList<>();
List<Integer> rezc = new ArrayList<>();
rez.add(1);
rezc=rez;
rezc.add(2);
for (int s : rez) {
System.out.print(s + " ");
}//this will print 1 2
Run Code Online (Sandbox Code Playgroud) 所以我希望能够获取一个字符串并输出以下内容:大写,小写,数字,句点,逗号,空格和其他符号.我已完成大部分代码,但我在该区域评论说我遇到了麻烦.我不能怎么做,而且它让我在一周的大部分时间里都难过!非常感谢任何帮助!
import java.util.*;
public class JavaPractice
{
public static void main(String[] args)
{
//declarations
Scanner keyboard = new Scanner(System.in);
char tryAgain = 'n';
char linechar = ' ';
String lineText;
int uppercase = 0;
int lowercase = 0;
int digits = 0;
int periods = 0;
int commas = 0;
int blanks = 0;
int others = 0;
do
{
// initialize categories
uppercase = 0;
lowercase = 0;
digits = 0;
periods = 0;
commas = 0;
blanks = …Run Code Online (Sandbox Code Playgroud) 它是什么意思它是一个数组或它是一个列表类型字符串
List<String> list = new ArrayList<String>(); // why parenthesis
List<String> removeList = new ArrayList<String>();//why parenthesis
Run Code Online (Sandbox Code Playgroud)
这个方法那么List和Collection和arrys之间有什么区别呢
// what mean this collection
private void removeColors(Collection<String> collection1,Collection<String> collection2)
{
Iterator<String> iterator = collection1.iterator();//what does mean
while(iterator.hasNext())//what does mean
if(collection2.contains(iterator.next()))//what does mean
iterator.remove();//what does mean
}
Run Code Online (Sandbox Code Playgroud) 启动一个ArrayListby 的问题是什么:
new ArrayList<String>().add("something");
Run Code Online (Sandbox Code Playgroud)
为什么我们应该使用以下内容来启动ArrayList:
new ArrayList<String>() {{
add("something");
}};
Run Code Online (Sandbox Code Playgroud) 我用Arrays制作了一个Arraylist,我想按相反的顺序按照数组中的第一项进行排序.例如:
ArrayList<int[]> arr = new ArrayList<>();
arr.add[1,500,20];
arr.add[5,30,60];
arr.add[2,10,20];
Run Code Online (Sandbox Code Playgroud)
我想这样排序:
[5,30,60],[2,100,20],[1,500,300]
Run Code Online (Sandbox Code Playgroud)
Java中有没有选项可以做到这一点?我知道Comparator,但在这种情况下我不知道如何使用它.
感谢帮助
arraylist ×10
java ×10
arrays ×4
api ×1
collections ×1
contains ×1
list ×1
sorting ×1
string ×1
web-services ×1