package stack;
import java.util.LinkedList;
/**
创建一个类Stack,代表堆栈(其特点为:后进先出),添加方法add(Object obj)、以及get(),添加main方法进行验证,要求:
1) 使用LinkedList实现堆栈
2) 在向LinkedList中添加时,使用addLast方法
3) 在从LinkedList中取出时,使用removeLast方法
@author ASUS
*/
public class Stack {
static LinkedList I = new LinkedList();
public static void main(String[]args){
for (int i = 0; i < 10; i++) {
Stack.add(i);
}
System.out.println("栈中的初始元素为:"+I+"\n");
System.out.println("向栈添加元素10和11");
Stack.add(10);
Stack.add(11);
System.out.println("添加后栈中的元素为:"+I+"\n");
int listsize = I.size();
for(int i = 0;i<listsize;i++){
System.out.println("取出元素"+Stack.get()+"后栈中元素为:"+I);
}
}
private static Object get() {
return I.removeLast();
}
private static void add(Object obj) {
I.addLast(obj);
}
}
我很笨的,能再讲详细点吗?-_-!!!
追答用int listsize = I.size();
获取了集合I的大小后,后面在for循环的过程中就知道需要循环的次数,就可以通过循环取出所需要的数据了。
int listsize = I.size();在Java以下例子中起到什么作用?
for(int i = 0;i<listsize;i++){ System.out.println("取出元素"+Stack.get()+"后栈中元素为:"+I);要遍历整个Stack,你要知道里面总共存了多少个对象,这样你取多少次,这样就能全部取出来。I.size()就是Stack里面对象的数量
java 项目 , List<实体>,需要获取list中的重复数据
public static <T> int[] reduplicateIndex(List<T> list, T str) throws Exception{ List<T> tmp = new ArrayList<T>(list); int[] index = new int[Collections.frequency(list, str)]; int start = tmp.indexOf(str); int end = tmp.lastIndexOf(str); int i = 0; if(start < 0) { th...
java 开发开发工具怎么优化
例如:for(int i = 0;i < list.size; i ++) { …}应替换为:for(int i = 0,int len = list.size();i < len; i ++) { …}10、尽量采用lazy loading 的策略,即在需要的时候才开始创建。 例如: String str = “aaa”; if(i == 1) { list.add(str);}应替换为: if(i == 1) {Strin...
java中对集合对象list的几种循环访问总结
} \/\/for循环遍历 for (int i = 0, size = list.size(); i < size; i++) { System.out.println(list.get(i)); } \/\/iterator迭代器遍历 Iterator<Integer> it = list.iterator(); while (it.hasNext()) { System.out.println(it.next()); } \/\/fo...
为什么会出现 java.util.ConcurrentModificationException 异常_百度...
这是JDK的一种快速失败特性,当多个线程同时操作一个集合或Map的时候,如果这个集合正在被别的线程读取,同时另一个线程正在修改就会抛出异常,这么说可能不直观,举个例子吧,下面这个程序会抛出这个异常:\/ <pre> 遍历过程中对集合元素进行移除 1. 在使用for循环的时候,长度选用list.size()方法是没...
用java编写程序,输出斐波那契数列的前10个数。
public static void main(String args[]){ int i=1,j=1;for(int n=1;n<=5;n++){ System.out.print(" "+i+" "+j);i = (int)(i+j);j = (int)(i+j);} System.out.println();} } \/\/测试:\/\/ 1 1 2 3 5 8 13 21 34 55 我给你大概解释一下吧,这个循环一共循环5...
java中的number是什么?
楼主如果因为那些含糊不清的变量名而疑惑的话,我把这段程序以比较清楚的名字来重写以下:boolean hasnot=true;int index=0;int size=list.size();P:for(int i=0;i<size;i++) { Wage temp=(Wage)list.get(i);if(temp.s1.equals(target)) { hasnot=false;index=i;break P;} } 不...
Java:这段代码是如何删除List中第20到第30个元素的呢
list是链式的,remove传入的是索引位置 当当前索引对应位置执行删除后,当前索引后面的所有元素统一(前移)[前移这个说法不太标准,是移动还是进行了其他操作,跟list的具体实现相关,ArrayList是执行了前移],这样当前索引后面的所有元素的索引都会减少1,因此每次remove(20),第一次移除的是索引为20的,第二...
java里有没有专门判断List里有重复的数据
你好,既然用list了,那么就不排除会重复,而且list可以是对象,也并不好确认唯一性,可以用map来进行存储确认唯一性。如果一定要把list判断出来的话,可以参考下面的小例子 public static void main(String[] args) { List<String> list = new ArrayList<String>(); list.add("aa"); ...
size()函数的功能是什么?
2、[r,c]=size(A),当有两个输出参数时,size函数将矩阵的行数返回到第一个输出变量r,将矩阵的列数返回到第二个输出变量c。3、size(A,n)如果在size函数的输入参数中再添加一项n,并用1或2为n赋值,则size将返回矩阵的行数或列数。其中r=size(A,1)该语句返回的时矩阵A的行数,c=size(A...