第二十节(数组和集合)
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)); } } }