泛型1)在编译时,由编译器约束放入集合中的类型2)在运行时,编译器会擦除原泛型类型3)泛型二边要么都不使用约束,要么二边约束一致类型,同时二边必须使用引用类型4)为了与JDK1.4兼容,泛型可以一边有约束,一边无约束思考:不利用中间变量,将二个数交互5)当一个类中出大量的泛型方式或属性/字段,此时可以将该类作成泛型类6)如果使用泛型通配符,只能获取与泛型具体类型无关的信息,例如:长度。7)有二个类
分类:
编程语言 时间:
2018-04-16 11:04:31
阅读次数:
167
1.获取int型最大值: 2.获得long类型最大值: 其他大同小异。 3.除2运算: 4.除2的m次方运算: 5.判断一个数的奇偶性 6.不用临时变量交换两个数 7.取绝对值 8.取两个数的最大值 9.取两个数的最小值 10.判断符号是否相同 11.计算2的n次方 12.判断一个数是不是2的幂 1 ...
分类:
其他好文 时间:
2018-03-20 12:47:53
阅读次数:
144
一.冒泡排序 原理:简单来说就是相邻两个元素进行对比,按照你需要的排序方式(升序or降序)进行位置替换,替换时需要额外一个变量当作中间变量去暂存值。 总结步骤: 1、外循环是遍历每个元素,每次都放置好一个元素; 2、内循环是比较相邻的两个元素,把大/小的元素交换到后面; 3、等到第一步中循环好了以后 ...
分类:
编程语言 时间:
2018-03-14 22:03:35
阅读次数:
256
输出结果为0 原因: Java中采用中间变量缓存机制,如下: j = i++; 这样的表达式会被转化为: temp = i; i = i + 1; j = temp; 代入表达式计算 j 所使用的实际上是 temp 这个中间变量而不是 i 本身,同理可知 j = ++i; 实际上的计算过程为 i = ...
分类:
编程语言 时间:
2018-03-06 20:20:03
阅读次数:
121
Part 1 快速幂 朴素的O(n)算法过慢,又存不下过大的变量,所以考虑将指数二进制化,每次右移一位,底数随着自乘,就有了O(logn)的算法。 大数通常需要结果对P取模, 为了避免中间变量溢出,我们可以边取模边计算,有如下等式: (a\ b)%p=((a%p)\ (b%p))%p 代码如下: i ...
分类:
其他好文 时间:
2018-03-03 15:32:31
阅读次数:
176
在此记录一些常见的C语言错误,可以当作学习C语言的笔记,需要的时候可以回过头看看。 1.关于“++” 关于自加自减运算符用于句话就可以总结:a++先使用后自加,++a先自加再引用。这样就可以轻松得出结果: 2.交换变量 第一种方法即中间变量法,下面说明第二种,不添加中间变量: 3.char* str ...
分类:
编程语言 时间:
2018-02-28 12:53:19
阅读次数:
196
1. 求a, b中较大的数,不使用if、?、switch等判断语句。 答案: 另一种思路是求两者的差,然后通过位运算判断差值的正负,不过个人觉得还是第一种各位简洁优雅。 2. 交换a, b的值,要求不使用任何中间变量。 答案: ...
分类:
其他好文 时间:
2018-02-27 23:33:01
阅读次数:
190
原理 : 源代码: public class insertSort { public static void sort(int[] array) //插入排序 { int temp =0; //中间变量 for(int i=1;i<array.length;i++) { temp =array[i] ...
分类:
编程语言 时间:
2018-02-20 17:30:00
阅读次数:
172
交换a和b的值:a=11b=22#引进第三个变量交换a和b的值# c=a#把a给c,现在c是11# a=b#把b给a,现在a是22# b=c#把c给b,现在b是11#不引进第三个变量,交换a和b的值# 方法1# b,a=a,b#交换两个变量的值#方法2a = a+b #a现在是33b = a-b # ...
分类:
编程语言 时间:
2018-01-20 22:52:07
阅读次数:
184
直接看源代码; 总结: 第一种方式,利用中间变量进行累加,这种方式最简单粗暴; 第二种方式; 利用我们linq aggretion(聚合)的原理,有点函数编程的感觉,每一次求和的结果,参与到下一次的计算中; 第三种方式:经典的递归; 三种方式,结果没有什么,差异,更过的是体会实现过程; 结果: ...
分类:
Windows程序 时间:
2018-01-03 17:30:36
阅读次数:
2059