java常见问题 待更新
1....
注意stringbuffer 的用法,相当于一个全局变量。。
StringBuffer sb = new StringBuffer();
sb.append("333");
map.put("1",sb)
sb.delete(o,3);
结果。。。。map 里的值变成0;
2.......JAVA,泛型循环
List<User> list =new ArrayList();
for(User user:list) {
System.out.println("user.name="user.getName());
}
3...........String 装换为long
Long.parstlong(String s)
4.................
System.arraycopy("0003".getBytes(), 0, bindData, 0,4);
System.arraycopy((seq+"").getBytes(), 0, bindData, 4,4);
String cmd = contentBody.substring(0, 4);
String seqStr = contentBody.substring(4,8);
5------------
接口不能被实例化,
可以声明一个接口的引用变量,让它指向一个类的实例,当然那个类要实现了那个接口的
6-------------
一个字节占8位。也就是说8位的2进制数,也就是说2位的16进制。
7----------------------
String hex = Integer.toHexString(b[ i ] 0xFF);
。java.lang.Integer.toHexString() 方法的参数是int(32位)类型,如果输入一个byte(8位)类型的数字,这个
方法会把这个数字的高24为也看作有效位,这就必然导致错误,使用& 0XFF操作,可以把高24位置0以避免这样错误
.
8------------
select type, count(type) from th_gas_and_vg3 group by type order by count(type) desc
9---------------------------
各种进制之间的转换。
9.1----16进制转十进制(存储数字的字符)
从返回值可以看出他们的区别 parseInt()返回的是基本类型int
而valueOf()返回的是包装类Integer Integer是可以使用对象方法的 而int类型就不能和Object类型进行互相转换
String chuan="82";
int zhuan=Integer.parseInt(chuan);
int zhuanyi=Integer.valueOf(chuan);
为什么你的程序返回值都可以用int来接收呢? 因为Integer和int可以自动转换
9.2------十进制转16进制
Integer.toHexString(int i)
Long.toHexString(time).toUpperCase();
10---------------------------
java中是方法是值传递。
比如 在一个方法里
for(int i=1;i<3;i++)
{
tobject a = new tobject();
a.add(i);
map.put(i,a);
sysout(a);
}
每次A的改变都会引起以前A的值的改变.
我也整部明白了。
可以利用局部变量的值。
吧大的map当中参数传入,
在方法里创建tobject对象并放入。tobject的生命周期仅仅只在局部变量方法里,这样就可以了!
如果你试图返回一个tobject 这样不行,生命周期就大了!
利用局部方法,创建局部变量,让map成为大变量,里存的对象是局部对象。
--------------------------------------------------
10------------------
JAVA IO 流
什么时候写出,带不带回车????????
用PrintStream 的时候,flush();
11----------------------------