- 博客(21)
- 收藏
- 关注
原创 Java的Comparator接口及Lambda表达式(java8)
LambdaLambda表达式的结构:( ) -> { };注意: Lambda要求实现的接口中只有一个方法; 简化:当方法体只有一个语句的时候,{}可以省略;另外,return关键字也被省略了,原因是编译器会认为,既然只有一个语句,那么这个语句执行的结果就应该是返回值,所以return也就不需要了。同理,当参数只有一个的时候,小括号也是可以省略的.Comparat...
2019-08-15 13:22:15
322
原创 Java扑克牌发牌程序
Java扑克牌发牌代码(自定义牌的幅数和人数)每个人按花色,从大到小排序输出手牌(重写了Comparable接口的compareTo方法)Poker类定义num和huase,然后就是构造方法,重写compareTo方法.注意:String调用equals方法时,遵循 “常量”.equals(变量) .public class Poker implements ...
2019-08-15 13:22:01
836
原创 Java的Integer封装类
Integer是int的包装类,默认值是null由于Integer变量实际上是对一个Integer对象的引用,所以通过new生成的Integer变量和另一个Integer变量永远是不相等的(因为new生成的是新对象,其内存地址不同)。Integer i = new Integer(100);//Java9后,用Integer i =Integer.valueOf(100)代替Int...
2019-08-15 13:21:55
235
原创 Java的 += 和 = 的区别
a = a + b 与 a += b 的区别?=:赋值运算符,在编译器将右边的表达式结果计算出来后,和左边的变量类型比较精度,如果左边的变量精度低于右边的结果的精度,编译器会显式的报错,告诉程序员去强制转型。(若a精度类型弱于b,a = a + b出错,编译检查报错)最后将表达式的结果复制到变量所在的内存区。+=:暂且称之为运算符,编译器自动隐式直接将+=运算符后面的操作数强制转...
2019-08-15 13:21:51
200
原创 Java的ArrayList类的简介及几个注意点
简介ArrayList就是动态数组,ArrayList对象既有数组的特征,也有链表的特征。可以随时从链表中添加或删除一个元素,支持随机访问.注意:删除和插入元素时较慢(删除和插入操作过多时用LinkedList).当我们不知道数组到底有多少个数据元素的时候,就可使用ArrayList;如果知道数据集合有多少个元素,就用数组.当ArrayList中的元素超过它的初始大小时,Arr...
2019-08-15 13:21:45
132
原创 Java的LinkedList类的简介及几个注意点
简介List接口的链接列表实现。实现所有可选的列表操作,并且允许所有元素(包括null)。除了实现List接口外,LinkedList类还为在列表的开头及结尾get、remove和insert元素提供了统一的命名方法。这些操作允许将链接列表用作堆栈、队列或双端队列。此类实现Deque接口,为add、poll提供先进先出队列操作,以及其他堆栈和双端队...
2019-08-15 13:21:40
127
原创 Java的Arrays类的主要用法
import java.util.Arrays;排序 - sortArrays.sort(array);将数组array中全部元素按从小到大排序;Arrays.sort(array,fromIndex,toIndex);将数组array中fromIndex到toIndex的元素从小到大排序;填充 - fillArrays.fill(array,key);将数...
2019-08-15 13:21:32
127
原创 List.remove()在for循环中出现问题的三个解决方法
问题描述:用下面的方法remove,将出现缺项问题List<Integer> list = new ArrayList<Integer>();for(int i = 0; i < 10; i++) { list.add(i);}for(int i = 0; i < list.size(); i++) { System.out.p...
2019-08-15 13:21:26
365
原创 Iterator和ListIterator两种迭代器的简介和区别
Iterator:可用于所有Collection.方法:hasNext():如果仍有元素可以迭代,则返回true. next():返回迭代的下一个元素 ,可以重复调用此方法来迭代此列表. remove():从迭代器指向的 collection 中移除迭代器返回的最后一个元素。每次调用next只能调用一次此方法.while:Iterator<Integer&...
2019-08-15 13:21:17
212
原创 Java的Math类的主要用法
Math类在lang包中,不需import.属性:E:e(即自然对数的底数)System.out.println(Math.E);PI: π(即圆的周长与直径之比)System.out.println(Math.PI);方法:random :返回带正号的double值,该值大于等于0.0且小于1.0System.out.println(Mat...
2019-08-15 13:21:11
145
原创 Java的System类简介
System类不可实例化System作为系统类,在ava.lang包中System类的构造器由private修饰,不允许被实例化,类中的方法也都是static修饰的静态方法。字段public final static InputStream in; 标准输入流 public final static PrintStream out; 标准输出流 public final s...
2019-08-15 13:20:58
112
原创 Java字符串格式化-String.format()的使用
转 换 符 说 明 示 例 %s 字符串类型 "mingrisoft" %c 字符类型 'm' %b 布尔类型 true ...
2019-08-15 13:20:52
114
原创 Java的String类的replace
replace的参数是char和CharSequence,即可以支持字符的替换,也支持字符串的替换replaceAll的参数是regex,即基于规则表达式的替换,比如:可以通过replaceAll("\\d", "*")把一个字符串所有的数字字符都换成星号;相同点:都是全部替换,即把源字符串中的某一字符或字符串全部换成指定的字符或字符串;不同点:replaceAll支持正则表达式,因此...
2019-08-15 13:20:34
305
原创 Java的Random类
总结:java.util.Random类中①随机数是种子经过计算生成的。②Random类中不含参的构造函数每次都是使用当前时间作为种子,随机性更强;而含参数的构造函数是以参数为种子产生的伪随机数,更有可预见性。③具有相同种子值的Random对象生成的随机数相同;种子值不同,产生的随机数不再一致。Math.random()方法中内部调用的方法就是Random类中的nextDouble...
2019-08-15 13:20:28
98
原创 Java的ArrayList和Vector的区别
Vector & ArrayListVector的方法都是同步的(Synchronized),是线程安全的(thread-safe),而ArrayList的方法不是,由于线程的同步必然要影响性能,因此,ArrayList的性能比Vector好。 当Vector或ArrayList中的元素超过它的初始大小时,Vector会将它的容量翻倍,而ArrayList只增加50%的大小,这样,...
2019-08-15 13:20:08
63
原创 Java创建子类对象(实例化)时的执行顺序问题
若类未加载,先加载类,执行静态代码块,类只加载一次,即静态代码块只执行一次;非静态代码块在构造方法前执行,先执行完父类再执行子类的;同等级的代码块,按照先后顺序执行;...
2019-08-15 13:20:01
252
1
原创 MySQL和Java数据类型对应
Java MySQL数据类型对照类型名称 显示长度 数据库类型 JAVA类型 JDBC类型索引(int) 描述 VARCHAR L+N VARCHAR java.lang.String 12 CHAR N CHAR java.lang.String...
2019-08-15 13:19:43
91
原创 Java 反射详解
一、什么是反射?JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。二、反射能做什么?我们知道反射机制允许程序在运行时取得任何一个已知名称的class的内部信息,包括包括其modifiers(修饰符),fields(属性),meth...
2019-08-15 13:19:20
84
原创 Java通过反射创建数组和操作数组
动态创建数组的步骤如下:1.创建Class对象,通过forName(String)方法指定数组元素的类型2.调用Array.newInstance(Class, length_of_array)动态创建数组3.动态数组Array可以转化为普通的数组public static void main(String args[]) throws Exception { Cl...
2019-08-15 13:18:33
285
原创 jdbc使用PreparedStatement和Statement性能比较(MySQL)
分别使用PreparedStatement和Statement向MySQL数据库中插入10万条数据代码如下:public class JDBCTest { DAO dao = new DAO(); @Test public void testDelete() { String sql = "delete from test where user...
2019-08-15 13:16:40
229
原创 Java读写文件指定编码格式
使用InputStreamReader,OutputStreamWriterInputStreamReader reader = new InputStreamReader(new FileInputStream(file),readCharsetName);BufferedReader bfReader = new BufferedReader(reader);OutputStrea...
2019-08-14 22:56:14
515
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人