Java中的foreach循环与for循环的局限性,冒泡输入法

首先for循环我们常用对他应该很了解,for循环全部都适用没有局限性,foreach循环只局限用来输出数组,这是for的使用for(int i;i<=x;i++)这是foreach的使用for(int i:a)。接下来我分别举例对一个数组举例,foreach循环也可在ArrayList容器里使用

//for循环
public static void main(String[] args) {
      int []a={8,2,4,5,3};
      for(int i=0;i<a.length;i++){
        System.out.print(a[i]+" ");//这个for循环是输出a的数组
        }
}





//foreach循环,他只有两个值中间用冒号,for(int或者String:a)看输出a数组是什么类型就用什么类型
public static void main(String[] args) {
      int []a={8,2,4,5,3};
    for(int i:a){ //看看a数组是什么类型,a数组是整形就定义整形变量输出int i:,字符串就定义String
        System.out.println(i);//foreach的用法就是定义i,将a数组的值赋给i ,在输出i
    }
}

补充数据冒泡法代码

public static void main(String[] args) {
      int []a={8,2,4,5,3};
      int t=0;
        for(int i=0;i<a.length;i++){
            for(int j=0;j<a.length-1-i;j++){    
                if(a[j]<a[j+1]){ //交换
                    t=a[j];
                    a[j]=a[j+1];
                    a[j+1]=t;
                    }
                  }
      for(int i=0;i<a.length;i++){
        System.out.print(a[i]+" ");
        }
}    


public static void main(String[] args) {
      int []a={8,2,4,5,3};
      int t=0;
        for(int i=0;i<a.length;i++){
            for(int j=0;j<a.length-1-i;j++){
                if(a[j]<a[j+1]){
                    t=a[j];
                    a[j]=a[j+1];
                    a[j+1]=t;
                    }
                  }
        for(int k:a){
        System.out.print(a+" ");
        }
}

ArrayList使用foreach循环

public class NoteBook {
	private ArrayList/*=容器类型*/<String>/*=元素类型*/ notes=new ArrayList<String>();
    public void add(String s) {
	notes.add(s);}
    public String[] list(){//这个作用主要是主类已赋值的下标将内容一一赋给数组
			String [] a=new String[notes.size()];
//			for(int i=0;i<notes.size();i++) {
//				a[i]=notes.get(i);
//			}这里的循环内容等同于下面的方法
		notes.toArray(a);//等同上面的循环
			return a;
}
//每执行一次得到size++,可与下面的add叠加
	
}
public static void main(String[] args) {
		// TODO 自动生成的方法存根
	NoteBook nb=new NoteBook();
    nb.add("first");
	nb.add("second");
    String []a=nb.list();
	for(String s:a) {
		System.out.println(s);
	}
}
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值