第二十节(数组和集合)

package aaaa;


/**
 * 
 * 
 * Test<BR>
 * 创建人:dengfengming <BR>
 * 时间:2015年1月18日-上午9:52:34 <BR>
 * @version 1.0.0
 *
 */
public class Test {
    public static int[] sort(int[] numbers,boolean flag){
        for(int i=0; i < numbers.length-1; i++){
            for(int j=0; j < numbers.length-i-1 ;j++){//循环有一个一定要
                if(!flag){
                    if(numbers[j] < numbers[j+1]){
                        int s = numbers[j+1];
                        numbers[j+1] = numbers[j];
                        numbers[j] = s;
                    }
                }else{
                    if(numbers[j] > numbers[j+1]){
                        int s = numbers[j+1];
                        numbers[j+1] = numbers[j];
                        numbers[j] = s;
                    }
                } 
            }
        }
        return numbers;
    }
    
    
    public static void main(String[] args) {
        
        //java的八种数据类型---一种数据结构
        //byte int short long --整型
        //float double 浮点数
        //char -字符型 0 48 A 65 a97
        
        //boolean 不参与数据类型转换
//        char c = 'A';
//        System.out.println("A======"+(int)c); 
//        char a = 'a';
//        System.out.println("a======"+(int)a);
//        char zero = '0';
//        System.out.println("0====="+(int)zero);
//        int i = 1;
//        int c = 2;
        
        
        
//        //数组--第一种定义方式--
//        int[] counts = {1,2,3,4,5,6,7,8,9,10};    
//        float[] menoys = {1.5f,10,1.9f};
//        char[] cs = {'A','中','1','C'};
//        //获取数组的第一个值 ,数组的下标是从:0开始
//        System.out.println("获取数组的第一个值:"+counts[0]);
//        //数组数组的最后一个值
//        int length = counts.length;
//        System.out.println("数组的长度是:"+length);
//        System.out.println("数组的最后一个值是:"+counts[length-1]);
//        
//        //数组一旦定义长度就不可以更改了。
//        
//        //数组-第二种定义方式--初始化后赋值
//        int[] numbers = new int[3];
//        numbers[0] = 1;
//        numbers[1] = 2;
//        numbers[2] = 3;
//        
//        //第三种第一方式
//        int[] numbs = new int[]{1,2,3};
//        
//        //更改一下
//        numbers[0]=1000;
//        System.out.println(numbers[0]);
//        System.out.println(numbers.length);
//        for (int i = 0; i < numbers.length; i++) {
//            System.out.println("number["+i+"]的值是:"+numbers[i]);
//        }
//        
//        System.out.println("===================");
//        int k = 0;
//        for(int c : numbers){//foreach循环
//            System.out.println("numbers["+k+"]==="+c);
//            k++;
//        }
//        //数组如何取值--for循环获取值
//        int[] ks = {1,10,0,5,999,100,12};
//        for(int i=0; i < ks.length-1; i++){
//            System.out.println("第一次交换的过程是:ks["+i+"]");
//            for(int j=0; j < ks.length-i-1 ;j++){//循环有一个一定要
//                //System.out.println("交换之前ks["+j+"]===ks["+(j+1)+"]==对应的值是:"+ks[j]+"==="+ks[j+1]);
//                if(ks[j] < ks[j+1]){
//                    int s = ks[j+1];
//                    ks[j+1] = ks[j];
//                    ks[j] = s;
//                }
//                System.out.println("【交换之后ks["+j+"]===ks["+(j+1)+"]==对应的值是:"+ks[j]+"==="+ks[j+1]+"】");
//            }
//            
//            System.out.println("=============================");
//        }
        
        //交换排序---
        
        int[] numbers = {1,8,952,41,52,0,87,61,1111,88};
        numbers = sort(numbers, false);
        for (int i : numbers) {
            System.out.println(i);
        }
    }
 
}
package com.ming;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * 
 * 
 * ListDemo<BR>
 * 创建人:dengfengming <BR>
 * 时间:2015年1月18日-上午10:16:59 <BR>
 * @version 1.0.0
 *
 */

public class ListDemo {
public static void main(String[] args) {
        
        new ListDemo();
        
        
        //1:我学了知识点能干什么
        //2:为什么要这样做
        //3:有什么用
        //4:怎么去使用
        //5:什么时候用
        //javase:基础数据类型,封装数据类型之间的转换   数组,集合,Map java的面向对象
        //io 异常
        
        //java.util.Collection jdk-api
        //Collection 接口-----List接口 === Set接口
        //List结合---ArrayList LinkedList Vector(ArrayList实现的原理都是一样的--线程安全的)//
        //为什么会有集合?
        
        //定义 数组你相当开辟一个长度为10的数组--一个动态数组
        //集合条件元素是调用:add(object);
        List<String> strings = new ArrayList<String>();//等价于String[] str = new String[10];
        //jdk里面的ArrayList和Vectory他们是一个以1.5 * 10 + 1为扩展的动态数组 = 16
        strings.add("1");
        strings.add("2");
        strings.add("3");
        strings.add("4");
        strings.add("5");
        strings.add("6");
        strings.add("7");
        strings.add("8");
        strings.add("9");
        strings.add("10");
        strings.add("11");//添加到这一行的时候:数组的长度就变成:16
        //泛型=--数据类型范围的置顶
        
        
        
        
//        //获取元素的第一值
//        System.out.println("集合的第一个元素是:"+strings.get(0));
//        //获取元素的最后一个值
//        int length = strings.size();
//        System.out.println("集合的长度是:"+length);
//        System.out.println("集合的最后一个元素是:"+strings.get(length-1));
//        strings.set(0, "1000");//修改
//        System.out.println("集合的第一个元素是:"+strings.get(0));
//        strings.remove(5);//根据下标去删除集合的元素
//        strings.set(0, null);
//        strings.set(2, null);
//        strings.add(null);
        
//        //用for取值
//        System.out.println("======第一种foreach循环");
//        for (String string : strings) {
//            System.out.println(string);
//        }
//        
//        System.out.println("======第三种Iterator循环");
//        Iterator<String> iterator = strings.iterator();
//        while(iterator.hasNext()){
//            System.out.println(iterator.next());
//        }
        
//        System.out.println("======第二种for循环");
        
        //对分好的理解
        //一定要认真的观察每一个代码包括标点符号.
        for (int i = 0; i < strings.size(); i++);//静态代码块--它和类静态方法一样--在类启动的时候就初始化了
        {
            System.out.println(strings.get(0));
        }
    }
}
原文地址:https://www.cnblogs.com/Deng1185246160/p/4231512.html