- 浏览: 1589889 次
- 来自: 上海
文章分类
- 全部博客 (374)
- Java (101)
- Struts (54)
- Oracle (30)
- JavaScript (16)
- Spring (27)
- Hibernate (16)
- MyEclipse (3)
- JSF (1)
- FreeMarker (2)
- SiteMesh (2)
- JfreeChart (2)
- Ibatis (2)
- JSP (12)
- MyBatis (4)
- SWFupload (1)
- EJB (4)
- Jboss (4)
- WebService (2)
- Linux (16)
- Android (2)
- XML (6)
- Java 网络编程 (13)
- AXIS2 (1)
- FTP (1)
- Jswing (1)
- Socket (3)
- 杂文选集 (6)
- solr (2)
- PS (1)
- Tomcat (7)
- JDBC (9)
- Highcharts (1)
- maven (1)
- Nodejs (0)
- navicat (2)
- Exception (5)
- eclipse (3)
- jQuery (1)
- springMVC (4)
- MySQL (11)
- SVN (1)
- Sql Server (1)
- zookeeper (1)
- JVM (1)
- Groovy (2)
- Git (1)
- Nginx (1)
- DynamicReport (1)
- IDEA (2)
- JasperReports (1)
- Postgresql (2)
- Mac (1)
- gradle (1)
- 数据结构算法 (1)
最新评论
-
hpu145:
引用引用
java 千分位的添加和去除 -
被遗忘的下路:
少了个junit-4.8.2的包
SSH2整合完整案例(四十三) -
白天看黑夜:
java过滤emoji字符处理,希望能帮到你http://ww ...
emoji 表情图片解决方法 -
caipeiming:
这个挺好JavaScript实现input输入框控件只允许输入 ...
js 控制文本框只能输入中文、英文、数字等 -
双子树:
东西太好啦受教啊
Struts2 JSP中将list,set ,Map传递到Action然后<s:iterator>遍历(三十五)
1.数组的定义格式
数组的操作
/*
//选择排序
*/
//冒泡排序
//数组中元素的查找
折半查找
进制转换
查表法总结
二维数组 (组中的数组)
//数据定义的题目
1.元素类型 [] 数组名=new 元素类型[元素个数或者 数组长度]; int [] arr=new int[5]; //推荐 int arrs[] =new int[5]; 2.静态初始化方式 不能写长度 int [] arrs=new int[]{3,1,4,5,6,2}; int [] arrs={3,1,4,5,6,2}; //好像 是在jdk 5.0 后才能使用 3.boolean类型的数组默认值为 false
数组的操作
public static void main(String [] args){ //length 属性 打印 数组 int [] arr={1,2,4,5,63,8,7,9,5,4}; for(int x=0;x<arr.length;x++){ if(x!=arr.length-1) System.out.println(arr[i]+","); else System.out.println(arr[i]); } int max =getArrMax(arr): System.out.println(max): } /* 获取最大值 采用 元素值表示 */ public static int getArrMax(int[] arr){ int max=arr[0]; for(int x=0;x<arr.length;x++){ if(arr[x]>max) max=arr[x]; } return max; } /* 采用 数组元素小标 来表示 */ public static int getArrMax(int[] arr){ int max=0; for(int x=0;x<arr.length;x++){ if(arr[x]>arr[max]) max=x; } return arr[max]; }
/*
//选择排序
*/
public static void main(String[] args){ int [] arr={1,2,5,6,4,7,3}; selSort(arr); System.out.println(Arrays.toString(arr)); } public static void selSort(int[] arr){ for(int x=0;x< arr.length;x++){ for(int y=x;y<arr.length;y++){ if(arr[x]<arr[y]){ int temp=arr[x]; arr[x]=arr[y]; arr[y]=temp; } } } }
//冒泡排序
public static void main(String[] args) { // TODO Auto-generated method stub int [] arr={1,2,5,6,4,7,3}; bubbleSort(arr); System.out.println(Arrays.toString(arr)); } //冒泡排序 public static void bubbleSort(int[] arr) { for(int x=0;x<arr.length-1;x++){ //-x:让每一次比较的元素减少,-1 :不让下标越界 for (int y = 0; y < arr.length-1-x; y++) { if(arr[y]>arr[y+1]){ int temp = arr[y]; arr[y] = arr[y+1]; arr[y+1] = temp; } } } } //数组中交换两个位置的值 public static void swarp(int arr[],int a.int b){ //方法一: int temp=arr[a]; arr[a]=arr[b]; arr[b]=temp; //方法二 arr[a]=arr[a]^arr[b]; arr[b]=arr[a]^arr[b]; arr[a]=arr[a]^arr[b]; }
//数组中元素的查找
//常规 public static void main(String [] args){ int [] arr={3,1,5,4,6,8,9,7,2}; int index=getIndex(arr,2); System.out.println("index="+index): } //获取key 第一次出现的位置 -1 表示数组中不存在 public static int getIndex(int[] arr,int key){ for(int x=0;x<arr.length;x++){ if(arr[x]==key) return x; } return -1;// 没有找到 }
折半查找
public static void main(String[] args) { int [] arrs={1,2,3,4,5,6,7,8,9}; System.out.println(halfSearch(arrs,9)); System.out.println(halfSearch_2(arrs,9)); } //折半查找 必须保证数据中的元素是有序的 /* * 折半查找方式1,提高效率,但是必须要保证该数组是有序的数组 */ public static int halfSearch(int[] arr,int key){ int min=0; int max=arr.length-1; int mid=(max+min)/2; while(arr[mid]!=key){ if(key>arr[mid]) min=mid+1; else if(key<arr[mid]) max=mid-1; if(min>max) return -1; mid=(max+min)/2; } return mid; } /* * 折半查找 2 折半查找方式可以用于插入 数据 */ public static int halfSearch_2(int[] arr,int key){ int min=0,max=arr.length,mid; while(min<=max){ mid=(min+max)>>1; if(key>arr[mid]) min=mid+1; else if(key<arr[mid]) max=mid-1; else return mid; } return mid; //如果要在 一个有序数组中加入 一个元素, 返回 mid 就是要插入的位置 //return -1; //表示在查找的时候 没有找到 }
进制转换
/** * 十进制 --> 二进制 * @param num */ public static void toBin(int num){ StringBuffer sb=new StringBuffer(); while(num!=0){ sb.append(num%2); num=num/2; } System.out.println(sb.reverse()); } /** * 十进制--->十六进制 * @param num */ public static void toHex(int num){ StringBuffer sb=new StringBuffer(); while(num!=0){ int temp=num & 15; if(temp>9) sb.append((char)(temp-10+'A')); else sb.append(temp); num=num>>>4; } System.out.println(sb.reverse()); } /** * 十进制--->十六进制 * @param num */ public static void toHex_1(int num){ StringBuffer sb=new StringBuffer(); for (int i = 0; i < 8; i++) { int temp=num & 15; if(temp>9) sb.append((char)(temp+55)); // else sb.append(temp); num=num>>>4; } System.out.println(sb.reverse()); } /** * 十进制--->十六进制 * 查表法 可以为负数 * @param num */ public static void toHex_2(int num){ StringBuffer sb=new StringBuffer(); char[] chs={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; //char 的默认值为 '\u0000'; ' ' for (int i = 0; i < 8; i++) { int temp=num & 15; sb.append(chs[temp]); num=num>>>4; } System.out.println(sb.reverse()); } public static void main(String[] args) { toBin(6); toHex_1(60); toHex(-60); toHex_2(-60); }
查表法总结
/** * 各种进制的转换 * @param num * @param base 与上的基数 * @param offset 偏移量 * @return */ public static String trans(int num,int base,int offset){ char[] chs={'0','1','2','3','4','5','6','7','8','9','A','B','C','D','E','F'}; if(num==0) return "0"; StringBuffer sb=new StringBuffer(); while(num!=0){ int temp=num & base; sb.append(chs[temp]); num=num>>>offset; } return sb.reverse().toString(); } /** * 十进制 -->二进制 * @param num * @return */ public static String toBinary(int num){ return trans(num,1,1); } /** * 十进制 -->八进制 * @param num * @return */ public static String toEight(int num){ return trans(num,7,3); } /** * 十进制 -->十六进制 * @param num * @return */ public static String toHex(int num){ return trans(num,15,4); } public static void main(String[] args) { System.out.println(toBinary(6)); System.out.println(toBinary(-6)); System.out.println(toEight(60)); System.out.println(toEight(-60)); System.out.println(toHex(60)); System.out.println(toHex(-60)); }
二维数组 (组中的数组)
public static void main(String[] args) { // TODO Auto-generated method stub int [] arr=new int[3]; // 一维数组 //1.初始化 int[][] arr1=new int[3][4]; //定义 了一个二维数组中,二维数组中有3个一维数组, //每个一维数组中有4个元素. System.out.println(arr1[0][1]); //2初始化 int[][] arr2=new int[3][]; arr2[0]=new int[3]; arr2[1]=new int[]{1,2,3}; arr2[2]=new int[]{2}; //3初始化 int[][] arr3={{1,2,3},{0},{2,3}}; int sum=0; for (int i = 0; i < arr3.length; i++) { for (int j = 0; j < arr3[i].length; j++) { sum+=arr3[i][j]; } } System.out.println(sum); }
//数据定义的题目
1.一维数组的定义 int [] x int x [] ; //两种都可以 2.二维数组的定义 int[][] y, int y[][], int[] y[], 3.注意 int [] x,y[] ; x是一维数组 y 是二位数组 int x[],y[] : x是一维数组 y 是二位数组 a : x[0]=y; //error b: y[0]=x //yes c: y[0][0]=x //error d: x[0][0]=y //error e: y[0][0]=x[0] //yes f: x=y //error
发表评论
-
检测一个字符串是否在jvm的常量池中
2018-12-18 17:34 997public static boolean inPool( ... -
UTC时间, GMT时间 ,夏令时
2017-08-18 15:12 2282经常混淆于此,特地研究了一下,记录在此以备忘。 整个地 ... -
java 反射List
2017-02-18 01:58 5654package com.enhance.reflect; ... -
JDK1.5 Exchange 两个线程互换数据
2016-08-04 18:00 986import java.util.concurrent ... -
JDK1.5 CountDownLatch
2016-08-04 16:25 1055/* * 还有一个利用场景: ... -
java CyclicBarrier 循环障碍阻塞
2016-08-03 23:54 1008//一个同步辅助类,它允许一组线程互相等待,直到到达某个公 ... -
java 信号灯 Semaphore
2016-08-03 23:53 1823更多介绍http://blog.csdn.net/java20 ... -
java 使用读写锁设计一个缓存模型
2016-08-03 23:49 1416import java.util.HashMap; ... -
java 读写锁
2016-08-03 23:46 815import java.util.Random; i ... -
java 多个线程之间同步通信
2016-08-02 17:16 2396import java.util.concurrent ... -
jdk1.5 锁 Lock 和 Condition
2016-08-02 17:03 925// lock 练习 public class Lock ... -
JDK1.5 获取线程执行结果 Callable Future
2016-08-02 15:08 1172import java.util.Random; i ... -
JDK1.5 线程池
2016-08-02 14:48 801import java.util.concurrent ... -
java 多线程ThreadLocal
2016-08-02 00:13 1145import java.util.Random; ... -
java 定时器 Timer
2016-08-01 16:53 3892import java.util.Calendar; ... -
java 多线程同步+通信
2016-08-01 16:48 964/** *父子线程 交替打印10 次, 100次 ... -
java 线程同步
2016-08-01 16:43 1021import java.util.concurrent.l ... -
java多线程练习
2016-08-01 16:35 1840Java 传统多线程 Java 多线程同步 Java 多线 ... -
java 传统多线程
2016-08-01 16:34 1004/** * 传统多线程 */ public ... -
java 图片,剪切,缩放
2016-01-06 10:21 2230package out; import ja ...
相关推荐
重复这个过程,直到数组排序完成。 8. 折半查找 在 Java 中,折半查找是一种二分查找算法。它的工作原理是,查找数组中的中间元素,如果目标元素小于中间元素,则在左半部分继续查找,否则在右半部分继续查找。 9...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. ...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
- 将字符串转换为字符数组,每个字符代表一个十进制位。 - 从低位到高位依次相加,同时处理进位。 - 将最终结果转换回字符串形式输出。 **示例代码片段**: ```java public static void BigInt() { String num...
3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项...
实例094 整数进制转换器 115 实例095 查看数字的取值范围 116 实例096 ASCII编码查看器 117 实例097 Double类型的比较 118 5.4 面向对象的特征 119 实例098 经理与员工的差异 119 实例099 重写父类中的方法 121 实例...
实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 ...
实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 ...
实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 2.3 其他...
实例4 常用基础类型之强制转换 11 2.2 运算符 12 实例5 算术运算符 12 实例6 关系运算符 13 实例7 逻辑运算符 14 实例8 位运算符 15 实例9 移位运算符 16 实例10 转型运算符 17 2.3 其他形式 18 实例11 常量与变量 ...
二进制日志 5.11.4. 慢速查询日志 5.11.5. 日志文件维护 5.12. 在同一台机器上运行多个MySQL服务器 5.12.1. 在Windows下运行多个服务器 5.12.2. 在Unix中运行多个服务器 5.12.3. 在多服务器环境...