![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java
yxb_yingu
这个作者很懒,什么都没留下…
展开
-
JAVA初学者第一个程序“Hello World”常见的错误及处理方法
1、System第一个单词没有大写,String args[],中第一个字母没有大写。2、System.out.print中间的点其实是:调用的意思。3、单词的拼写错误。4、public static void main(String []args){} public static void main(String args[]){}两种表达方式是同一种意思。5、每一句编程原创 2016-03-22 08:48:32 · 13287 阅读 · 2 评论 -
八大排序算法 之 基数排序(桶排序)
如数组:{458--296--13--7--697--61}排序思想:1,先按个位上的数字大小顺序排列,结果为61--13--296--7--697--4582,在上述顺序的基础上,按十位上的大小顺序排列,结果为:7--13--458--61--2963,在上述顺序的基础上,按百位上的大小顺序排列,结果为:7--13--61--296--458对于上述,最大数是三位数的数组,只原创 2016-05-05 21:02:40 · 717 阅读 · 0 评论 -
java中常见异常的结构和分类
Throwable(父类)ErrorAWTErrorIOErrorLinkageErrorThreadDeathErrorException……(自建Exception)SQLExceptionIOExceptionRuntimeExceptionIndexOutOfBoundExceptionNullPointerExceptionClassC原创 2016-04-21 20:29:34 · 455 阅读 · 0 评论 -
八大排序算法 之 归并排序
排序思想:如图所示:排序趟数:如果2^n如此例,9>8,趟数是4.排序原理:1,第一趟将相邻两个数归并成一个有序的小组合;2,第二趟将相邻两个有序小组合归并成一个更大的的有序组合;3,依次类推,直到将所有数归并成一个最大的组合;具体代码实现如下: //归并排序主方法 public static void mergeSort(int[] array){原创 2016-05-07 10:40:41 · 759 阅读 · 0 评论 -
八大排序算法 之 希尔排序(缩小增量排序)
排序思想:1,希尔排序属于插入排序算法;2,希尔排序是插入排序算法的优化,插入算法在插入过程中要移动很多次数字,几趟下来,移动次数就多不胜数,希尔排序的思想是先设法将数组排列成大致有序的,这样再进行插入排序是就会减少大量移动,从而优化算法;3,将数组调整成大致有序的步骤按照原理被称为缩小增量法,即每次拿一个数跟(增量间隔)后的数比较,按大小调整位置(调整方法为插入排序法),每趟执行完后原创 2016-05-07 11:13:13 · 1491 阅读 · 0 评论 -
八大排序算法 之 快速排序(填坑法)
排序思想:1,将第一个数字作为基准数字,将数组分为左右两部分,左边是比它小的数字,右边是比它大的数字;2,将左部分按照上面的思想再次进行划分成两部分,依次类推;3,将右部分按照上面的思想再次进行划分成两部分,依次类推;排序趟数:不确定排序原理:填坑法:1,将第一个数字作为基准数字拿出,留下一个坑,从数组的最后开始往前循环,发现比基准数字小的就把它填到之前留下的坑里,原创 2016-05-07 11:36:51 · 3665 阅读 · 0 评论 -
八大排序算法 之 直接插入排序
排序思想:进行n趟循环,保证每趟把前n个数字变成有序的,n趟过后,数组就会变成有序的排序趟数:n-1趟排序原理:每趟找到当前n对应下标的数字作为基准,往前面比较,找到合适的位置插入,以保证这趟过后,数组前部分数字有序参考图片:实现代码如下: //直接插入排序 public static void insertSort(int[] array){ for原创 2016-05-07 11:49:13 · 464 阅读 · 0 评论 -
八大排序算法 之 冒泡排序VS选择排序
排序思想:(二者相同)每次循环将最大值拿出来放到最后(或将最小值放到开头),n-1趟循环后,即可完成排序排序趟数:最大n-1趟排序原理:冒泡排序:每次循环,从第一个数开始,相邻数依次比较,较大的往后放选择排序:每次循环,拿出第一个数作为最小值,跟后面所有数依次比较,每次记录最小值得下标,最后将第一个数和最小值交换代码实现如下://冒泡排序 public s原创 2016-05-07 15:00:09 · 1054 阅读 · 0 评论 -
八大排序算法 之 堆排序(二叉树排序)
例如数组 a={19,3,60,7,1,15,33,24,45,32,79,85};排序思想:1,堆排序也是选择排序的一种,根据堆得特性,每次把最大或最小值(本次以最大值为例)拿出来,按序排列;2,堆排序是对普通选择排序的一种优化:如果是一个稳定堆,每次在选择最大值时,只用沿着二叉树其中一个分叉去交换即可,其他分叉符合堆得特性(因是排好的稳定堆),可以看作是稳定的,不用重排交换,省去了原创 2016-05-07 10:03:43 · 23612 阅读 · 3 评论 -
面试题:求任意时间分针和时针之间的度数
double hour = 6;//输入小时 double min = 6;//输入分钟 double a1 = 30 * hour; //以针指12为基准,时针的大致度数--每两个个数字之间是30度 double a = a1 + Math.rint(min /2d) ;//以针指12为基准,时针的准确度数--加上根据分针所在位置对应的时针偏移量,分针每走两下(12度),原创 2016-06-16 19:24:23 · 1404 阅读 · 0 评论 -
线程池的应用和解析
系统的资源不是无限的,当你开启一个个的线程时,又或者当你频繁开启一个线程而这个线程有很快工作完毕,此时,系统要不断的创建和销毁线程,需要消耗大量的资源于是就有了线程池,它是专门用来管理线程的,当你 需要时给你创建一个,当这个线程使用完毕后不会马上回收,而是让其空转,然后接受任务队列中的任务进行处理,大大优化了系统资源的配置,(我们常见的例子中,迅雷就是一个,你每次只能进行5个任务的下载,其他都原创 2016-08-12 19:57:44 · 1528 阅读 · 0 评论 -
一个随时间不断变化的值确认其变化范围的方法
例如,实现每一秒钟打印一个“Hello” long tempTime = System.currentTimeMillis(); while(true){ long time = System.currentTimeMillis(); if (time - tempTime == 1000) { System.out.println("Hello"); tempT原创 2016-04-16 11:39:49 · 1173 阅读 · 0 评论 -
java中日期时间格式与毫秒数的转换
//输入日期转化为毫秒数 ---用calendar方法(calendar.getTime) Calendar calendar = Calendar.getInstance(); calendar.set(2018, 2, 15, 8, 31, 5); System.out.println(calendar.getTimeInMillis());//输入日期,转化为毫秒数,原创 2016-04-16 10:23:20 · 79458 阅读 · 0 评论 -
多态经典面试题解析
多态经典面试题已知类ABCD,B继承于A,C和D继承于B,具体如下public class A { public void print(A a){ System.out.println("A and A"); } public void print(D d){ System.out.println("A and D"); }}public class B exte原创 2016-04-13 19:25:56 · 7091 阅读 · 4 评论 -
用String类和Integer等基本数据类型包装类进行实例化对象时的工作原理
1,关于传递:8种基本数据类型(byte,short,int,long,float,double,char,boolean)进行的是值传递;Objiect类的所有子类传递时,传递的是值对应的地址。2,基本数据类型 int a = 10; int b = 10; System.out.println(a == b);//true此处,是基本数据类型,比较的是a,b的值,都是10,所以结原创 2016-04-04 11:09:31 · 2022 阅读 · 0 评论 -
int数据类型是几位的?为什么负数通过计算器和通过代码转化为二进制的结果不同?
int数据是占4个字节,每个字节占8位,所以int类型是32位的。例,int a = 123; 则得到~123是-124.但123的二进制码是:1111011补全后是:00000000 00000000 00000000 01111011~123可得:11111111 11111111 11111111 10000100把这个放进计算器中,通过二进制转化为10进制得到的是42949原创 2016-03-22 17:57:34 · 3809 阅读 · 1 评论 -
JAVA环境变量的配置及常用工具说明
首先,到官网www.eclipse.com下载并安装最新版本的JDK。其次,找到设置位置:“我的电脑”(右键)--属性---高级系统设置---高级(默认)---环境变量---系统变量新建系统变量JAVA_HOME和CLASSPATH变量名:JAVA_HOME变量值:C:\Program Files\Java\jdkX.X.X -------jdk安装目录变量名:CLAS原创 2016-04-05 19:26:33 · 696 阅读 · 0 评论 -
跳转语句continue;break;return的区别
continue: 如果循环语句里有此语句,程序运行到此语句时,不在执行循环体里continue后面的语句而是跳到下一个循环入口处执行下一个循环。break: 此语句导致程序终止包含它的循环并进行程序的下一阶段(整个循环后面的语句),即不是跳到下一个循环周期而是退出循环。 如果break语句包含在嵌套循环里,它只跳出最里面的循环。 return:表原创 2016-04-05 19:50:49 · 636 阅读 · 0 评论 -
巧用“异或”符进行组合中两个元素的位置调换
一般我们要互换一个组合中两个元素的位置时,都会新建一个中间变量,通过这个中间变量去调换,方法如下:例:int a = 10; int b = 20;1,定义一个变量c, 把a的值给c:c = a;2,将b的值给a:a = b;3,将c给b:b = c;这样完成了a和 b值得互换。那么,可不可以不建立中间变量就完成两个元素的互换呢?异或符---“^”可以做到。原创 2016-04-05 20:10:18 · 588 阅读 · 0 评论 -
JAVA常用运算符极其运算优先级的总结
a、算数运算符: + - * / %b、赋值运算符: = += -= *= /= %= &= |=c、关系运算符: = == !=d、逻辑运算符:&& || ! e、三目运算符:( ? :)f、字符串连接原创 2016-04-05 20:32:15 · 20201 阅读 · 0 评论 -
关于构造方法特性的总结
它具有与类相同的名称; 它不含返回值;在构造方法里不含返回值的概念是不同于 “void” 的,在定义构造方法时加了 “void” ,结果这个方法就不再被自动调用了。 它不能在方法中用 return 语句返回一个值; 当自定义了构造方法后,编译器将不再自动创建不带参数的构造方法 。 当一个类的实例对象刚产生时,这个类的构造方法就会被自动调用,我们可以在这个方法中加入要完成初始化工作的代码。一个类中可原创 2016-03-23 19:29:10 · 514 阅读 · 0 评论 -
如何用程序自动打印Int类型十进制负数的二进制码?
首先,通过数学原理,我们可以轻易用程序打印正数的二进制码,方法比较简单,举例如下:方法一:for循环public static void toBinary(int a ){int b = 0;//定义余数赋值为0String result = "";for(;;){b = a % 2;//求余result = b + result;a /= 2;if(a ==原创 2016-03-24 13:29:29 · 899 阅读 · 0 评论 -
在一个数组或字符串中找到出现频率最高的那个元素的方法
思路:1,将数组按大小排序。2,相邻两个元素比较是否相等,并记录相等次数得到这个元素出现的频率3,在比较过程中,不断将最大次数和其对应的元素赋值给一个变量,最后得到出现频率最高的元素4,通过集合收集并再次比较的方法处理多个元素出现频率同时最高的情况我们以双色球蓝球的玩法为例,实现的代码如下: int[] blueBalls = new int[n]; /*原创 2016-04-06 20:30:53 · 2678 阅读 · 0 评论 -
根据用户需要输出打印菱形,用for循环输出打印星号组成的菱形
代码如下:import java.util.Scanner;//根据输入的行数输出菱形public class Demo { public static void printStar(int a){ int b; boolean temp; //判断输入的数字是奇数或是偶数,并标记 if(a % 2 == 0){ b = a / 2; temp原创 2016-03-24 20:13:58 · 12542 阅读 · 0 评论 -
Java中hashSet与treeSet的去重原理
地球人都知道set集合是不含重复元素的,那么其去重原理是什么,我们又可以做哪些用途呢?1,treeSet去重原理:compareTo可以实现排序及去重:如果compareTo返回0,说明是重复的,返回的是自己的某个属性和另一个对象的某个属性的差值,如果是负数,则往前面排,如果是正数,往后面排;应用:类实现compareable接口,覆写其compareto方法,根据自己的需要改原创 2016-08-12 20:20:13 · 11647 阅读 · 0 评论