为什么我得错了输出?

时间:2014-06-30 13:18:04

标签: java eclipse

我写了这个程序来交换字符串中的第一个和最后一个字符。

我创建了两个类(abc和BackFront)。 Eclipse中没有错误,但我没有得到任何输出。当我点击运行时,我得到了其他一些类的输出。我做错了什么?

类abc with main:

package puneeth;
import java.lang.*;

public class abc {
    public void main(String[] args) {
        BackFront object1 = new BackFront();
        String str = "chocolate";
        object1.frontBack(str);
    }
}

Class BackFront:

package puneeth;
import java.lang.*;
public class BackFront {
    public String frontBack(String str) {
        String mid = str.substring(1,str.length());
        String first = str.substring(0,3);
        String last = str.substring(str.length());
        return last + mid + first;
    }
}

5 个答案:

答案 0 :(得分:0)

字符串已更改,但您从未对其进行物理打印以便输出。您可以System.out.println(object1.frontBack(str);从输出控制台获取输出。

答案 1 :(得分:0)

您期望什么类型的输出。
如果您在输出窗口中需要某些内容,则需要:

System.out.println( "My String" );

答案 2 :(得分:0)

这很奇怪,请确保您运行的是正确的文件。

答案 3 :(得分:0)

Class BackFront:

package puneeth;

public class BackFront {
    public void frontBack(String str) {
        String result;
        StringBuilder sb = new StringBuilder(str);
        char first = sb.charAt(0);
        sb.setCharAt(0, sb.charAt(sb.length() - 1));
        sb.setCharAt(sb.length() - 1, first);
        result = sb.toString();
        System.out.println(result);
    }

}


使用main方法的类abc:

package puneeth;

public class abc {
    public static void main(String[] args) {
        BackFront object1 = new BackFront();
        String str = "chocolate";
        object1.frontBack(str);
    }

}

// Result:
//        ehocolatc

答案 4 :(得分:0)

代码中的错误会让你发笑。

首先,您需要打印返回的字符串。这样做:

String res=object1.frontBack(str);
System.out.println(res);

其次,你需要将你的主要作为STATIC。这样做:

public static void main(String [] args)
{
//your code
}

这将解决您的问题。希望这会有所帮助:)