
JAVA学习中的问题
RashaunHan
这个作者很懒,什么都没留下…
展开
-
Java 中带参无返回值方法的使用中不可忽视的问题
1、 调用带参方法时,必须保证实参的数量、类型、顺序与形参一一对应2、 调用方法时,实参不需要指定数据类型3、 方法的参数可以是基本数据类型,如 int、double 等,也可以是引用数据类型,如 String、数组等4、 当方法参数有多个时,多个参数间以逗号分隔转载 2017-03-27 22:42:05 · 479 阅读 · 0 评论 -
用lambda求数组的和
其中用了IntStream.of(…).sum()这一方法求和public class test { public static void main(String[] args) { // TODO 自动生成的方法存根 test tl=new test(); int[] arr=new int[]{1,2,3,4,5,6}; ...原创 2018-08-10 18:02:03 · 4604 阅读 · 0 评论 -
Java泛型实例之接口设计——掌握标示接口以及如何设计泛型类
学习目标:加深泛型的理解掌握标示接口的定义设计要求用户在设计类的时候往往会使用类的关联关系,例如,一个人中可以定义一个信息的属性,但是一个人可能存在各种各样的信息(例如:联系方式、基本信息等),所以此信息属性的类型就可以通过泛型声明进行声明,之后只要设计相关的信息类即可。本实例主要...转载 2018-08-14 11:29:21 · 638 阅读 · 0 评论 -
Java中break、continue与return的区别
1. breakbreak语句的使用场合主要是switch语句和循环结构。在循环结构中使用break语句,如果执行了break语句,那么就退出循环,接着执行循环结构下面的第一条语句。如果在多重嵌套循环中使用break语句,当执行break语句的时候,退出的是它所在的循环结构,对外层循环没有任何影响。如果循环结构里有switch语句,并且在switch语句中使用了break语句,当执行switc...转载 2018-08-02 08:56:09 · 268 阅读 · 0 评论 -
枚举实现信号灯切换
public enum traffic { RED{ public traffic next(){ return GRE; } }, GRE{ public traffic next(){ return yellow; } }, yellow{ ...原创 2018-08-14 16:33:52 · 870 阅读 · 0 评论 -
Static
static转载 2018-08-02 14:08:29 · 161 阅读 · 0 评论 -
object类的常见方法
object的几个常见方法转载 2018-08-07 09:27:06 · 156 阅读 · 0 评论 -
Comparator和Comparable的区别
Comparator和Comparable的区别转载 2018-08-15 08:44:47 · 137 阅读 · 0 评论 -
java中switch支持其所支持的数据类型的包装类
因为在底层中switch会对包装类进行自动拆箱原创 2018-08-08 11:41:19 · 770 阅读 · 0 评论 -
Java8 Stream常用方法
Java8中提供了Stream对集合操作作出了极大的简化,学习了Stream之后,我们以后不用使用for循环就能对集合作出很好的操作。一、流的初始化与转换:Java中的Stream的所有操作都是针对流的,所以,使用Stream必须要得到Stream对象:1、初始化一个流:Stream stream = Stream.of("a", "b", "c");2、数组转换为一个流:...转载 2018-08-16 14:51:28 · 330 阅读 · 0 评论 -
JAVA8-Predicate的使用
public class guolv { String name; String author; int price; public guolv(String name,String author,int price) { this.name=name; this.author=author; this.price=p...原创 2018-08-16 15:17:41 · 1931 阅读 · 0 评论 -
socket网络编程中服务器与客户端通信失败的问题
服务器代码如下public class server { public static void main(String[] args) throws IOException { ServerSocket server=new ServerSocket(5678); Socket socket=server.accept(); Inpu...原创 2018-08-22 15:06:12 · 3842 阅读 · 0 评论 -
两个客户端相互通信的代码
服务端public class server { public static void main(String[] args) throws IOException { ServerSocket server=new ServerSocket(5678); Socket socket=server.accept(); InputStrea...原创 2018-08-22 15:08:03 · 1100 阅读 · 0 评论 -
BufferedInputStream与BufferedOutputStream用法简介
BufferedInputStream是带缓冲区的输入流,默认缓冲区大小是8M,能够减少访问磁盘的次数,提高文件读取性能;BufferedOutputStream是带缓冲区的输出流,能够提高文件的写入效率。BufferedInputStream与BufferedOutputStream分别是FilterInputStream类和FilterOutputStream类的子类,实现了装饰设计模式...转载 2018-08-20 10:12:03 · 1506 阅读 · 0 评论 -
对象流
public class student implements Serializable{ String name; int no; public String getName() { return name; } public void setName(String name) { this.name = name; ...原创 2018-08-20 11:11:10 · 126 阅读 · 0 评论 -
使用反射调用数组参数方法时数据类型为引用类型的时候的invoke方法自动解包的问题
在具有指定参数的方法对象上调用invoke方法对象表示的基础方法。 个别参数自动解包以匹配原始形式参数,原始参考参数和参考参数都需要进行方法调用转换。 比如在以下代码中class Employee{ public static void doWork(int...is) { System.out.println("doWork被调用:"+Arrays.toSt...原创 2018-09-10 16:04:13 · 786 阅读 · 0 评论 -
String对象比较:
String对象比较:1 :单独使用”“引号创建的字符串都是直接量,编译期就已经确定存储到常量池中, 2 :使用new strng(“”)创建的对象会存储到堆内存中,是运行期才创建; 3 :使用只包含直接量的字苻串连接纡如”aa”+ “bb”创建的也是直接量编译期敦能确定已经确定存 储到常量池中, 4 :使用包台string嘉接量(无fnal修饰符)的字符串表达式(如”aa” + s1...原创 2018-08-10 14:32:23 · 248 阅读 · 0 评论 -
java计算方法所耗费的时间
long startTime=System.currentTimeMillis();开始时间调用的方法long endTime=System.currentTimeMillis();结束时间float excTime=(float)(endTime-startTime)/1000;System.out.println("执行时间为:"+excTime+"s");...原创 2018-07-27 19:53:54 · 4402 阅读 · 0 评论 -
LeetCode买卖股票的最佳时机 II
class Solution { public int maxProfit(int[] prices) { int profit=0; for (int i = 0; i < prices.length-1; i++) { if (prices[i+1]-prices[i]>0) { pro...原创 2018-07-26 20:36:48 · 145 阅读 · 0 评论 -
Java中关于initcause的用法说明
initCause()这个方法就是对异常来进行包装的,目的就是为了出了问题的时候能够追根究底。因为一个项目,越往底层,可能抛出的异常类型会用很多,如果你在上层想要处理这些异常,你就需要挨个的写很多catch语句块来捕捉异常,这样是很麻烦的。如果我们对底层抛出的异常捕获后,抛出一个新的统一的异常,会避免这个问题。但是直接抛出一个新的异常,会让最原始的异常信息丢失,这样不利于排查问题。举个例子,在底层会转载 2017-03-27 17:07:46 · 8449 阅读 · 5 评论 -
Java String.split()用法
在java.lang包中有String.split()方法,返回是一个数组我在应用中用到一些,给大家总结一下,仅供大家参考:1、如果用“.”作为分隔的话,必须是如下写法,String.split(“\.”),这样才能正确的分隔开,不能用String.split(“.”);2、如果用“|”作为分隔的话,必须是如下写法,String.split(“\|”),这样才能正确的分隔开,不能用String.sp转载 2017-04-19 15:01:08 · 1510 阅读 · 0 评论 -
库存管理系统中登录验证中出现的问题
在库存管理系统的代码中出现了连接数据库进行查询时的错误,报空指针异常。原创 2017-05-14 16:14:35 · 834 阅读 · 0 评论 -
7.17日笔记【java基础】
1)若a=10,b=11,c=12 则a++ =10 ++b=_12 c– =12 a++先赋值再运算,++b先运算再赋值,c–先赋值再运算这种题目都全错,尴尬 int b=11; int a=10; int c=12; System.out.println(a++); System.out....原创 2018-07-18 08:51:30 · 112 阅读 · 0 评论 -
Java环境变量配置好之后,编写第一个程序报错:找不到或无法加载主类
运行第一个程序的时候出现 后发现是因为环境变量配置的问题 在CLASSPATH中设置为 %JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 前面应该有 ,; 即 .;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar 之后再运行依然错误,打开新的cmd窗口之后正常运行 ...原创 2018-07-13 09:26:55 · 1196 阅读 · 0 评论 -
【转载】深入剖析Java中的装箱和拆箱
自动装箱和拆箱问题是Java中一个老生常谈的问题了,今天我们就来一些看一下装箱和拆箱中的若干问题。本文先讲述装箱和拆箱最基本的东西,再来看一下面试笔试中经常遇到的与装箱、拆箱相关的问题。 以下是本文的目录大纲: 一.什么是装箱?什么是拆箱? 二.装箱和拆箱是如何实现的 三.面试中相关的问题一.什么是装箱?什么是拆箱? 在前面的文章中提到,Java为每种基本数据...转载 2018-07-24 15:21:41 · 121 阅读 · 0 评论 -
7.18日笔记【java基础】
switchswitch 语句中的变量类型可以是: byte、short、int 或者 char。从 Java SE 7 开始,switch 支持字符串类型了,同时 case 标签必须为字符串常量或字面量。 string在case后面要加”” 当遇到 break 语句时,switch 语句终止。程序跳转到 switch 语句后面的语句执行。case 语句不必须要包含 break 语句。如果...原创 2018-07-24 15:26:30 · 92 阅读 · 0 评论 -
双轴快速排序DualPivotQuicksort
private static void sort(int[] a, int left, int right, boolean leftmost) { int length = right - left + 1; // Use insertion sort on tiny arrays if (length < INSERTION_SORT_T...原创 2018-07-20 09:01:20 · 1008 阅读 · 0 评论 -
System.out.println与System.err.println
err是运行期异常和错误反馈的输出流的方向 System.err.println只能在屏幕上实现打印,即使你重定向了也一样 用err打印出的 字符串,再eclipse的console会显示成红色 标准输出往往是带缓存的,而标准出错没有缓存(默认设置,可以改) System.out.println输出有缓存,System.err.println是立即输出...原创 2018-07-26 10:35:17 · 157 阅读 · 0 评论 -
Java 中的多态
多态一般分为两种:重写式多态和重载式多态。重载式多态,也叫编译时多态。也就是说这种多态再编译时已经确定好了。重载大家都知道,方法名相同而参数列表不同的一组方法就是重载。在调用这种重载的方法时,通过传入不同的参数最后得到不同的结果。但是这里是有歧义的,有的人觉得不应该把重载也算作多态。因为很多人对多态的理解是:程序中定义的引用变量所指向的具体类型和通过该引用变量发出的方法调用在编程时并不确定...原创 2018-07-26 10:57:08 · 132 阅读 · 0 评论 -
关于在java 8中,为什么不能调用当前类正在实现的接口的静态方法的解释
以下情况可以通过编译Class A { static void staticMethod() { println(); } }Class B extends A { }B.staticMethod();而以下情况则不可以interface A { static void staticMethod() { ...原创 2018-07-26 11:57:36 · 3527 阅读 · 0 评论 -
方法的可变参数
在方法中使用 static int getSum(int … arr) 与 static int getSum(int[]arr) 效果相同。 但是…可以传入任意数量的参数原创 2018-07-29 14:56:58 · 219 阅读 · 0 评论 -
leetcode 从排序数组中删除重复项
示例 1:给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前两个元素被修改为 1, 2。 你不需要考虑数组中超出新长度后面的元素。示例 2:给定 nums = [0,0,1,1,1,2,2,3,3,4],函数应该返回新的长度 5, 并且原数组 nums 的前五个元素被修改为 0, 1, 2, 3, 4。你不需要考虑数组中超...原创 2018-07-26 19:11:38 · 145 阅读 · 0 评论 -
第一次测试错误记录
5、执行下面代码后输出的结果为( A ) int x =-3; int y = -10; System.out.println(y%x);A.-1 B. 2 C. 1 D. 3 6、设x = 1,y = 2,z = 3,则表达式 y += z–/++x 的值为( A ) A. 3 B. 3.5 C. 4 D...原创 2018-07-26 19:34:16 · 257 阅读 · 0 评论 -
策略模式
写代码时总会出很多的if…else,或者case。如果在一个条件语句中又包含了多个条件语句就会使得代码变得臃肿,维护的成本也会加大,而策略模式就能较好的解决这个问题,本篇博客就带你详细了解策略模式。策略模式的定义和使用场景定义:策略模式定义了一系列的算法,并将每一个算法封装起来,而且使他们可以相互替换,让算法独立于使用它的客户而独立变化。分析下定义,策略模式定义和封装了一系列的算法,它们是可...原创 2019-01-08 11:24:48 · 149 阅读 · 0 评论