摘要:
//括号匹配问题 int isMatched(char a,char b){ if(a=='{'&&b=='}') return 1; else if(a=='['&&b==']') return 1; else if(a=='('&&b==')') return 1; else return 0; 阅读全文
摘要:
大数加法 关键是plus那一步中的m<MAXSIZE,无需担心最高位rem不能再次进位,因为循环一直遍历到整个数组 #include<stdio.h> #include<stdbool.h> #include<stdlib.h> #include<string.h> #include<math.h> 阅读全文
摘要:
对输入的正整数n,输出{0,1,...,n-1}的所有子集。例如,输入3时,输出如下: {},{0},{1},{0,1},{2},{0,2},{1,2},{0,1,2} 这个题目可以考虑用二进制的方法来反映排列组合(输入数字3对应3位二进制数,3位二进制数共有8种写法,而包含三个元素的集合的排列组合 阅读全文
摘要:
给char赋值一个0xA5即165,那么编译器输出的结果该是多少呢? 答案是-91,为什么是这个结果呢? 在编译器当中165这个正数首先会转化成补码存储到内存当中,正数的补码还是其本身: [1010 0101]2 然而将这个数提取出来的时候,编译器发现寄存器当中的这个补码最高位是个1,所以编译器会以 阅读全文
摘要:
先备知识: 关于负数是如何在内存中是如何存储的? 在计算机内存当中,负数一律按照补码的形式进行存储,例如现在有一个负数-10 -10的二进制原码形式为 [1000 1010]2 这个地方需要注意的是高位为符号位,即当这个数字是负数的时候高位为1,正数时高位为0,且符号为不计入数值当中,只能表示正负数 阅读全文
摘要:
关于泛型之中装了子父类之后,List能否再相互赋值一事 假设 List<Object> list1 = null; List<String> list2 = new ArrayList<String>(); 请注意这两者是不存在子父类关系的,当装入List的那一刻,这两者的关系变味了并列关系 证明如 阅读全文
摘要:
@Test public void testNull() { String str = null; StringBuffer sb = new StringBuffer(); sb.append(str);//把str当成"null"这个字符串给放到sb里面去了 System.out.println 阅读全文
摘要:
现在有一道面试题,判断三个sout输出的结果 @Test public void IntegerEquals() { Integer i = new Integer(1); Integer j = new Integer(1); System.out.println(i == j);//false 阅读全文
摘要:
无论是在Java还是C语言中,条件运算符都对判断符‘?’之后的变量类型都是有一定的要求的: ?之后的变量或者数据都必须能够统一成为一个类型: 例如 三目运算符后integer和aDouble对应的是包装类Integer和Double,该三目运算符输出的结果是1.0,原因是三目运算符要求判断符之后的变 阅读全文
摘要:
当局部内部类访问同属于一个方法内的局部变量一定要求这个局部变量为final类型,或者这个局部变量是事实不变的呢? 解释:类new出来的对象是存在于堆当中的,而局部变量是跟着方法走的,存在于栈当中的,这就意味着对象的生命周期是大于堆中的方法的; 局部变量用完了之后就会被内存弹栈回收,若对象想在局部变量 阅读全文