<java核心技术卷i> 第三章:java基本程序结构: 每次看书,去总结的时候,总会发现一些新的东西,这次对于java的数组有了更深的了解: java中的数据类型,运算符,字符串,输入输出,控制流,大数值,数组: 数据类型:4 种整形,2种浮点型,1种字符类型 字符类型:char "A"表示含有A的字符串,其末尾含有字符串结束符,'A'则表示单个A字符 特殊字符需要转义,如: 转义序列 名称 Unicode值 \b 退格 \u0008 \t 制表 \u0009 \n 换行…
java中使用final关键字修饰一个变量时,是引用不能变,还是引用的对象不能变? 是引用对象的地址值不能变,引用变量所指向的对象的内容是可以改变. final变量永远指向这个对象,是一个常量指针,而不是指向常量的指针. 例如:final StringBuffer sbu = new StringBuffer(“abc”); 在对其进行重新赋值 sbu = new StringBuffer(“”); 会出现编译错误,被final修饰的变量是不能被重新赋值的. sbu.append(“d”); 是…
请说明"static"关键字是什么意思?Java中是否可以覆盖(override)一个private或者是static的方法? "static"关键字表明一个成员变量或者是成员方法可以在没有所属的类的实例变量的情况下被访问. override:子类重写父类的方法(返回值,方法名,参数都相同)以实现多态. private只能够被自身类访问,子类不能访问private修饰的成员,所有不能override一个private方法 static方法是与类绑定的与任何实例都无关…
* Convert byte[] to hex string.这里我们可以将byte转换成int,然后利用Integer.toHexString(int)来转换成16进制字符串. * @param src byte[] data * @return hex string */ public static String bytesToHexString(byte[] src){ StringBuilder stringBuilder = new StringBuilder(""); if…
Java中byte用二进制表示占用8位,而我们知道16进制的每个字符需要用4位二进制位来表示(23 + 22 + 21 + 20 = 15),所以我们就可以把每个byte转换成两个相应的16进制字符,即把byte的高4位和低4位分别转换成相应的16进制字符H和L,并组合起来得到byte转换到16进制字符串的结果new String(H) + new String(L).即byte用十六进制表示只占2位. 同理,相反的转换也是将两个16进制字符转换成一个byte,原理同上. 根据以上原理,我们就可…
我们都知道Java中的byte是由8个bit组成的,而16进制即16中状态,它是由4个bit来表示的,因为24=16.所以我们可以把一个byte转换成两个用16进制字符,即把高4位和低4位转换成相应的16进制字符,并组合这两个16进制字符串,从而得到byte的16进制字符串.同理,相反的转换也是将两个16进制字符转换成一个byte.转换的函数如下: /** * Convert byte[] to hex string * @param src * @return */ public static…
老套的笔试题 在一些老套的笔试题中,会要你判断s1==s2为false还是true,s1.equals(s2)为false还是true. String s1 = new String("xyz"); String s2 = "xyz"; System.out.println(s1 == s2); System.out.println(s1.equals(s2)); 对于这种题,你总能很快的给出标准答案:==比较的是对象地址,equals方法比较的是真正的字符数组.所…
再写jsp的实验作业的时候,需要用到java中对象流,但是碰到了之前没有遇到过的情况,改bug改到崩溃!!记录下来供大家分享 如果要用对象流去读取一个文件,一定要先判断这个文件的内容是否为空,如果为空的话,就是连对象流的实例对象也不要创建,一创建就会报错. 错误代码实例: public static void main(String[] args){ ObjectInputStream ois = null; File file = new File("F:\\MessageBroad.txt&…
public static final char UNDERLINE = '_'; /** * 驼峰格式字符串转换为下划线格式字符串 * * @param param * @return */ public static String camelToUnderline(String param) { if (param == null || "".equals(param.trim())) { return ""; } int len = param.length(…
发现在高请求量的时候获取hostName慢,后发现getHostName方法慢导致的:需要获取hostName为获取ip的方式了:java 中 InetSocketAddress // remoteAddress.getHostName() //获取hostName时耗时长,改方法要慎用:(先从本地取,如果本地没取到从远程dns中取) remoteAddress.getAddress().getHostAddress() : //改用这种方式获取ip…