Java 如何优化此功能?

Java 如何优化此功能?,java,optimization,Java,Optimization,如何尽可能地优化此功能 public void r1(String st1, int[] ar1) { String inox = "newsearch"; for (int j = 0; j < ar1.length; j++) { if (st1.equals(inox) && ar1[j] * 2 > 20) { Integer intx = new Integer(ar1[j]);

如何尽可能地优化此功能

public void r1(String st1, int[] ar1) {
    String inox = "newsearch";
    for (int j = 0; j < ar1.length; j++) {
        if (st1.equals(inox) && ar1[j] * 2 > 20) {
            Integer intx = new Integer(ar1[j]);
            intx = intx * 2;
            System.out.print(intx.toString());
        }
    }
}
public void r1(字符串st1,int[]ar1){
字符串inox=“newsearch”;
对于(int j=0;j20){
整数intx=新整数(ar1[j]);
intx=intx*2;
System.out.print(intx.toString());
}
}
}
公共void r1(字符串st1,int[]ar1){
字符串inox=“newsearch”;
if(st1.等于(inox){
对于(int j=0;j10){
系统输出打印(ar1[j]*2);
}
}
}
}
公共void r1(字符串st1,int[]ar1){
字符串inox=“newsearch”;
if(st1.等于(inox){
对于(int j=0;j10){
系统输出打印(ar1[j]*2);
}
}
}
}

这是一个相当奇怪的代码,但它与

public void r1(String st1, int[] ar1) {
    if (!str1.equals("newsearch")) return;

    for (int j : ar1) {
        int j2 = j * 2;
        if (j2 > 20) 
            System.out.print(j2);
    }
}

这是一个相当奇怪的代码,但它与

public void r1(String st1, int[] ar1) {
    if (!str1.equals("newsearch")) return;

    for (int j : ar1) {
        int j2 = j * 2;
        if (j2 > 20) 
            System.out.print(j2);
    }
}
public void r1(字符串st1,int[]ar1){
if(st1.equals(“newsearch”){
对于(int j=0;j10){
系统输出打印(ar1[j]*2);
}
}
}
}
公共void r1(字符串st1,int[]ar1){
if(st1.equals(“newsearch”){
对于(int j=0;j10){
系统输出打印(ar1[j]*2);
}
}
}
}

彼得·劳雷版本之上的建筑:

public void r1(String st1, int[] ar1) {
    if (!str1.equals("newsearch"))
        return;
    for (int j : ar1)
        if (j > 10)
            System.out.print(j << 1);
}
public void r1(字符串st1,int[]ar1){
如果(!str1.equals(“newsearch”))
返回;
for(int j:ar1)
如果(j>10)

系统输出打印(j建立在彼得·劳雷版本之上:

public void r1(String st1, int[] ar1) {
    if (!str1.equals("newsearch"))
        return;
    for (int j : ar1)
        if (j > 10)
            System.out.print(j << 1);
}
public void r1(字符串st1,int[]ar1){
如果(!str1.equals(“newsearch”))
返回;
for(int j:ar1)
如果(j>10)

System.out.print(j我已经为您优化了演示文稿-您还需要什么?(ps:您可以使用int而不是Integer-这应该会加快速度)你想优化什么?如果你最不想解释它的作用,为什么要费心分析和回答它?我看不到任何明显的优化。你为什么想优化它?速度慢吗?我已经为你优化了演示文稿-你还需要什么吗?(注:你可以使用int而不是Integer,这应该会加快速度)你想优化什么?如果你最不想解释它的作用,为什么要费心分析和回答它?我没有看到任何明显的优化。你为什么要这样做?它慢吗?这不是做同样的事情。顺便说一句:
(1)但在这种情况下,我认为我们可以简化这不是做同样的事情。顺便说一句:
(1但在这种情况下,我认为我们可以简化将str1.equals(“newsearch”)替换为“newsearch”。equals(str1)有助于避免NullPointerExceptionTrue,但这可能是有意的;(1)将str1.equals(“newsearch”)替换为“newsearch.equals(str1)有助于避免NullPointerExceptionTrue,但这可能是有意的