那些经常使用去容易忽视的小知识点

来源:互联网 发布:apk改之理 java源码 编辑:程序博客网 时间:2024/04/29 20:10

1、将List转为数组的一个非常方便的方法toArray。

常用:

        LinkedList<String> list = new LinkedList<String>();        for (int i = 0; i < 10; i++) {            list.add("" + i);        }        System.out.println("list" + list);        String[] arr = list.toArray(new String[list.size()]);        for (String ss : arr) {            System.out.print(ss + "  ");        }

2、打印文件下的所有文件其绝对路径

String dirpath = "E:\\哈哈";//对文件的操作务必注意 对其File构造 (dirpath字符串没有listFiles()方法)File dir = new File(dirpath);File[] files = dir.listFiles();for(File file:files){System.out.println(file);}

3、new String常见用法小结

    //  byte就是8位的二进制数 从01111111  然而 -128是1000000 127到-128      //  byte类型的数据范围是从 -128 到 127      //  String(byte[] bytes)       //  String(char[] value)                 public static void main(String[] args) {              String ss="哈哈哈";                            byte b=111;              byte []by={98,65,62};                            char []ch={'A','a','b'};                            System.out.println(new String(ss.getBytes()));  //哈哈哈              System.out.println(ss.getBytes());  //[B@2a139a55              System.out.println(b);//111              System.out.println(new String(by));//bA>                            System.out.println(new String(ch));//Aab                }  

4、逻辑运算 逻辑与&&  逻辑或 ||  逻辑非 !

位运算 按位与&  按位或 |  按位异或 ^   按位取反 ~

移位运算6<<3   6左动3位 左边大右小 0000 0110-->0011 0000 或者:6*2^3 6乘以2的3次方


//   toHexString   以十六进制(基数 16)无符号整数形式返回一个整数参数的字符串表示形式。 输入0-9无变化  大于9返回ABCDEF  //      && 左边为假不再计算,&左边为假,继续计算          System.out.println(Integer.toHexString(10));//转换为16进制 --a          System.out.println(Integer.toHexString(16));//  --10          System.out.println(3&4);    //与:只有11为1      --0          System.out.println(3|4);    //或:有1为1        --7          System.out.println(~3);     //非: 正数取反-》+1取反  负数取反-》取反+1 --(-4)          System.out.println(~(-3));  //  2          System.out.println(3^4);    //异或:二进制相异为1 相同为0   7          System.out.println(3^4^4);  //异或:异或两次为本身    常用于加密   3          System.out.println(6<<3); //左边大右小 0000 0110-->0011 0000 或者:6*2^3 6乘以2的3次方  
5、两种读字符文件文件方式
BufferedReader br = new BufferedReader(new FileReader(path),1024 * 1024 * 10); //10M
有中文时处理方式
BufferedReader br=new BufferedReader(new  InputStreamReader(new FileInputStream(pathIn),"GBK")); 

6、字符串获取位置相关操作
String ss="abcdefghijklm";
获取一个字符串位置在另一个字符串中的位置
System.out.println(ss.indexOf("ef"));//4
取一个字符位置在另一个字符串中的位置
System.out.println(ss.indexOf('e'));//4
获取某个小标的字符
System.out.println(ss.charAt(4));
截取下标内的字符串
 System.out.println(ss.substring(4,6));

7、根据制表 \t 和 , 切分

String  [] tokens=Pattern.compile("[\t,]").split(value.toString());
例:先去掉前两个,在根据\t ,切割
 String val="B:u3360,1  B:u39,1 B:u2730,1";           String [] kv=Pattern.compile("[\t,]").split(val.substring(2));           for(String k:kv){           System.out.println(k);           }

结果:

u33601  B:u391 B:u27301








0 0
原创粉丝点击