zoukankan      html  css  js  c++  java
  • Java基础知识点

    0 内存分配

    Xms:初始内存大小 -Xmx:最大内存大小 -Xmn:年轻代大小

    java -Xms13000m -Xmx13000M -version 爆了

    Tomcat设置,Linux写法:

    JAVA_OPTS=" -Xms8192m -Xmx8192m -XX:PermSize=2048M -XX:MaxNewSize=2048m -XX:MaxPermSize=2048m "
    

    Win写法:

    set "JAVA_OPTS= -Xms4096m -Xmx4096m -XX:PermSize=2048M -XX:MaxNewSize=2048m -XX:MaxPermSize=2048m "
    

    1 字符串与数值转换

    int转String :

    String s = String.valueOf(i);
    String s = Integer.toString(i); // 只产生一个对象
    String s = i + "";
    

    char[]转String:

    str = String.valueOf(charArray);
    

    String[]转String

    StringUtils.join(strArray, ","); // 将数组用逗号分隔变成字符串
    StringUtils.join(null)            = null // 用org.apache.commons.lang.StringUtils
    StringUtils.join([])              = ""
    StringUtils.join([null])          = ""
    StringUtils.join(["a", "b", "c"]) = "abc"
    StringUtils.join([null, "", "a"]) = "a"
    String[] str = { "1", "2", "a", "b" };
    

    List转String[]

    String[] array = list.toArray(new String[list.size()]);
    

    List转String

    str = StringUtils.join(list.toArray(), ",");
    

    String转int(Double、Float、Long):

    int i = Integer.parseInt("123");
    int i = Integer.valueOf("123").intValue();
    

    String转char[]:

    char[] charArray = str.toCharArray();
    

    String转String[]

    array = str.split("");  // String型的数组
    String.split("\."); // 特殊,转义字符,必须加"\"(“.”和“|”都是转义字符)
    String.split("\|");
    string.split("and|or");
    "aaa\bbb\bccc".split("\\");
    

    String转byte[]

    byte[] stringArr = string.getBytes();
    

    String[]转List

    List<string> list = Arrays.asList(stringArray);</string>
    

    字符串去空格

    String.trim()           // 去掉首尾空格
    str.replace(" ", "");   // 去掉所有空格,包括首尾、中间
    replaceAll(" ","");
    

    List和Array转换:https://www.cnblogs.com/happyPawpaw/archive/2012/10/22/2734140.html

    List转换为Array可以这样处理:

    ArrayList<String> list=new ArrayList<String>();
    String[] strings = new String[list.size()];
    list.toArray(strings);
    

    反过来,如果要将数组转成List怎么办呢?如下:

    String[] s = {"a","b","c"};
    List list = java.util.Arrays.asList(s);
    

    2 Java运行jar命令提示没有主清单属性

    解决这个问题的方法就是要在MANIFEST.MF文件中添加一个入口类。

    Main-Class: gui 这里的gui是你的xxx.java文件编译后的xxx.class文件稍微名称。但是不要加.class后缀。

    2.1 Intellij idea导出带有main方法的jar包,并且可以执行的方法

    File→Project Structure...→Artifacts→+→jar→From modules with .... → 选择一个要执行的main方法,选好后,点击确定→ OK

    然后点击Build → Build Artifacts 选择刚才创建的Artifacts,这时候去到project下去搜*.jar,就是你的项目名称,找到后用winrar打开。删除META-INF目录下的除了mainfest.mf,zigbert.rsa以外的其他所有文件,有的时候没有zigbert.rsa,没关系,只留下一个mainfest.mf就好了,这时候查看一下mainfest.mf文件内,有没有Main-Class:属性,如果没有就加上Main-Class: 带main方法的类,然后回车,保存。这时候jar包就打完了,执行的时候 在终端中执行
    java -Dskins.dir=0000000 -jarautoTestService.jar

    其中-Dskins.dir=0000000是在main方法中接收的参数,接收方法是String strValue = System.getProperty("skins.dir");

    第二种写法:

    java -jar jarautoTestService.jar

    这样就可以执行了。

    3 Maven放自己的包

    想好pom写法:

    <groupid>me.jfz</groupid>
    <artifactid>fuck_client_java</artifactid>
    <version>1.0.0</version>
    

    安装本地jar到maven仓库

    mvn install:install-file "-Dfile=fastdfs_client.jar" "-Dpackaging=jar" "-DgroupId=me.jfz" "-DartifactId=fuck_client_java" "-Dversion=1.0.0"
    

    例子2:

    <groupid>me.jfz</groupid>
    <artifactid>synthetica_plain</artifactid>
    <version>1.0.0</version>
    mvn install:install-file "-Dfile=syntheticaPlain.jar" "-Dpackaging=jar" "-DgroupId=me.jfz" "-DartifactId=synthetica_plain" "-Dversion=1.0.0"
    

    4 正则表达式获取两个字符中间的字符串

    String filetext = "//@张小名: 25分//@李小花: 43分//@王力: 100分";
    Pattern p = Pattern.compile("&#92;@(.*?)&#92;:");//正则表达式,取=和|之间的字符串,不包括=和|
    Matcher m = p.matcher(filetext);
    while(m.find()) { System.out.println(m.group(0));//m.group(1)不包括这两个字符}
    

    说明:m.group(0) 是包含那两个字符,m.group(1)不包含那两个字符。

    5 打包Java可执行jar包

    来源: http://www.cnblogs.com/blog5277/p/5920560.html

    Idea打包Java可执行jar包

    1,在项目上鼠标右键 --> Open Module Settings

    2, Artifacts --> + --> JAR --> From modules with dependencies...

    3, Main Class是你这个项目(脚本)的主方法,就是要运行的类,选一个

    4,如下图,设置 META-INF/MANIFEST.MF

    !!!!!切记,不能用默认的(起码我用默认的是不成功的)!!!!!

    6,选中你这个项目的根目录,一定要放在根目录下

    7,设置完是这样子的,关于 JAR files from libraries的两个选项:

    选中第一个的话,打完包后是一个jar包

    选中第二个的话,打完包后是一个jar包,外带你项目所用的jar包,个人推荐第二个

    8,设置完后就可以点OK了

    9,这个页面, Build on make打上勾,其他的不一样也没事

    10,最后一步, Build Artifacts... --> XXX.jar --> Build

    11,复制这里的路径去找jar包就行

    6 Win10设置双击运行jar包

    在注册表编辑器中,找到:

    HKEY_CLASSES_ROOTApplicationsjavaw.exeshellopencommand
    

    在其中文件打开命令中加入参数“-jar”(无引号),修改后的数值类似:

    "D:LibraryJavajre-10x64injavaw.exe" -jar "%1"
    

    (只需要添加-jar参数,无需修改其他信息,【注意】-jar与前后的引号之间均有空格),保存并退出注册表编辑器。像这样:

    然后我们就能双击运行jar包了,但记得有要有做GUI哦。

  • 相关阅读:
    多产品代码架构
    PMBOK 指南 第四章 项目整合管理(4.1-4.3)
    PMBOK 指南 第三章 项目经理的角色
    PMBOK 指南 第二章 项目运行环境
    初识PMP PMBOK初解(指南第一章引论)
    c++ 拷贝构造函数(重点在内含指针的浅拷贝和深拷贝)
    C++中的try throw catch 异常处理
    source insight 3 常用设置
    C++ map insert 另一个map的子集
    PMP学习笔记--11项目干系人管理
  • 原文地址:https://www.cnblogs.com/sandeepin/p/javajichuzhishidian.html
Copyright © 2011-2022 走看看